![]() |
1. Пользуйтесь тегами кода. - [code] ... [/code]
2. Точно указывайте язык, название и версию компилятора (интерпретатора).
3. Название темы должно быть информативным.
В описании темы указываем язык!!!
![]() ![]() |
![]() |
Rian |
![]()
Сообщение
#1
|
![]() Знаток ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 394 Пол: Мужской Репутация: ![]() ![]() ![]() |
сдрасте
у меня есть двоичный файл размер 14 байт (14 чисел), созданный в делфях мне нужно загрузить на пхп этот файл в массив... сделать изменения в числах... сохранить этот файл обратно я это делаю так (загружаю) Код <?php $data=file('data.dat'); $x=$data[0]+$data[1]+5; echo $x.'<br>'; echo ($data[2].'<br>'; ?> на экран выходит одно число "5" ЗЫ. почему-то при написании программ на пхп многие переменные у меня начинаются на n x s b pi Сообщение отредактировано: Rian - 1.07.2010 20:43 -------------------- Objective-C, Unity3d
|
Rian |
![]()
Сообщение
#2
|
![]() Знаток ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 394 Пол: Мужской Репутация: ![]() ![]() ![]() |
ну правда надо
-------------------- Objective-C, Unity3d
|
Lapp |
![]()
Сообщение
#3
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
у меня есть двоичный файл размер 14 байт (14 чисел), созданный в делфях ... на экран выходит одно число "5" Ты правда полагаешь, что можешь читать двоичную информацию без указания формата данных? откуда машине знать, как ты писал?.. Самое лучшее - записывать текст, если уж ты сам его пишешь, и читать текст. Двоичная информация - она МАШИНОЗАВИСИМА, что в корне противоречит идеологии PHP. Это неверный подход по своей сути. Постарайся этого избежать, если это возможно. -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
Rian |
![]()
Сообщение
#4
|
![]() Знаток ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 394 Пол: Мужской Репутация: ![]() ![]() ![]() |
![]() значит будем обходиться без двоичной -------------------- Objective-C, Unity3d
|
Lapp |
![]()
Сообщение
#5
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
![]() В чем именно неудобство? Длинный файл? 14 или там 100 байт? не смеши )) Не хочешь, чтоб файл был читабельным? Бинарность все равно не защита - шифруй. Кроссплатформенность - сильное требование, и оно вполне оправдано. Имей это в виду, когда программируешь для www. -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
Rian |
![]()
Сообщение
#6
|
![]() Знаток ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 394 Пол: Мужской Репутация: ![]() ![]() ![]() |
В чем именно неудобство? удобно, что не нужно преобразовывать типы, ну и место экономится))) если может вы догадались это для калаха файл имеет структуру 666 666 0 666 666 0 вот и в ячейке вполне может существовать число состоящих из двух символов 12 0 6 0 12 6 я хотел избавится от перехода из текстового режима в двоичный так.. хотя там вроде есть функция "explode" кажется так? которая упрощает это дело ЗЫ а если бы мне нужно было делать лабораторку и препод сказал: "Расшибись но сделай бинарным"? -------------------- Objective-C, Unity3d
|
Lapp |
![]()
Сообщение
#7
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
удобно, что не нужно преобразовывать типы, ну и место экономится))) Не нужно экономить место. Какой смысл, если файл все равно занимает как минимум блок? если может вы догадались это для калаха файл имеет структуру 666 666 0 666 666 0 вот и в ячейке вполне может существовать число состоящих из двух символов 12 0 6 0 12 6 я хотел избавится от перехода из текстового режима в двоичный ![]() Хорошо, если появилось смысловое наполнение, скажу по нему. Гораздо удобнее, когда файл текстовый. Держу пари, тебе захочется (при отладке или потом, так как ошибки могут вылезти в любое время при эксплуатации) однажды БЫСТРО проверить на каких-то конкретных данных. Что ты будешь делать? Самое простое - в любом редакторе создать текстовый файл и на нем все опробовать. Цитата так.. хотя там вроде есть функция "explode" кажется так? которая упрощает это дело есть explode(), есть str_split() и не только. В PHP все заточено под строки. Вникни в эту концепцию, и ты увидишь, что это удобно и правильно. Потом начнешь привлекать регулярные выражения, и уже не сможешь без строк, потому что это часть функциональности языка, а не просто формат данных.Цитата ЗЫ а если бы мне нужно было делать лабораторку и препод сказал: "Расшибись но сделай бинарным" Тогда fread(), например. Читаешь файл в строку, а потом строку разбираешь по байтам ручками..-------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
![]() ![]() |
![]() |
Текстовая версия | 18.07.2025 0:04 |