WriteString записывает не только указанное значение
Здравствуйте, когда я записываю определённое значение в файл оператором WriteString, то он перед этим значением в файле записывает и непонятный набор символов. Чтобы вам было яснее, предоставляю код:
Код:
Graphics 300,300 Код:
String Код:
! String Код:
¬ String Код:
Graphics 300,300 |
Ответ: WriteString записывает не только указанное значение
ReadString прочитает нормально из файла небоись. Главное в правильном порядке применить чтение. также как и записывал.
|
Ответ: WriteString записывает не только указанное значение
Код:
Function WriteString2(file,str$) |
Ответ: WriteString записывает не только указанное значение
radiobutton, я читаю обычным блокнотом.
|
Ответ: WriteString записывает не только указанное значение
Цитата:
Цитата:
|
Ответ: WriteString записывает не только указанное значение
Цитата:
Цитата:
|
Ответ: WriteString записывает не только указанное значение
Цитата:
строка_на_запись=строка_на_запись+другая_строка writeline строка_на_запись |
Ответ: WriteString записывает не только указанное значение
Цитата:
WriteByte(f,13) WriteByte(f,10) |
Ответ: WriteString записывает не только указанное значение
Gector, я пишу функцию для записи значения ключа в конфигурационный файл ini. Суть заключена в том, что оператором ReadString считывается весь файл. Потом Replace'oм заменяется предыдущее значение на следующее, и WriteString записывает уже изменённую переменную. Вот так.
|
Ответ: WriteString записывает не только указанное значение
Цитата:
Но вообще WriteString записывает строку и число ее символов чтобы потом считывать. Она в отличие от readline как обычный текст не читается. |
Ответ: WriteString записывает не только указанное значение
Цитата:
Ключ1=Значение ... КлючN=Значение |
Ответ: WriteString записывает не только указанное значение
Цитата:
|
Ответ: WriteString записывает не только указанное значение
WriteLine(klu4$+"="+zna4enie$)
;;;;;;;;;;;;;;;;;;;;;;; s$="" While(not(eof(file))) s=s+ReadLine$(file)+"#" wend в итоге получица так "lol=45#piw=523423#troll="troll"" будиш разбивать реплейсом.(хз чо за реплейс xD) |
Ответ: WriteString записывает не только указанное значение
radiobutton, это создание новой секции, а мне нужна запись в уже имеющуюся. Но вопрос был не в этом.
|
Ответ: WriteString записывает не только указанное значение
Цитата:
Один WriteLine равен одной строке в твоём ini файле. Стопицот WriteLine - стопицот строк. И да, что ты запишешь через WriteString, что через WriteLine - для тебя изменится только внешний вид твоего ini файла (но не для компа конечно). Хочешь читабельный результат - пиши через WriteLine, а считывай через ReadLine. У меня все конфиги во всех проектах так реализованы, потому что можно править руками через блокнот. Все другие типы записи (WriteString, WriteFloat и др.) без обязательного прочтения соответствующим оператором в блице ты исправить не сможешь. |
Ответ: WriteString записывает не только указанное значение
St_AnGer, да, видно без использования EoF не обойтись. Ну хорошо, я собрал достаточно информации, особенно помогла информация о переводе строки. Когда получится написать работающую функцию - обязательно сообщу.
|
Ответ: WriteString записывает не только указанное значение
Я во всём разобрался. Вот, если кому-то будет полезно - заимствуйте.
Чтение ini-файла: Код:
Global INIReadRes$ Код:
Dim FileLine$(100000) |
Ответ: WriteString записывает не только указанное значение
Цитата:
ну и тут INIReadRes = Mid(FindKeyT$, a+1, 10000) 10000 как то нечетко. Например c# бы выдал ошибку в таком случае при выполнении. Лучше уж сделать так: INIReadRes = Mid(FindKeyT, a+1, len(FindKeyT)-a) или INIReadRes = Right(FindKeyT,len(FindKeyT)-a) Да и вообще перебирать весь файл ради 1 значения как то нечетко. Лучше запиши весь файл в массив строк и уже массив перебирай с помощью свой функции. Или заранее перебери весь файл и занеси все значения ключей в глобальные переменные или глобальный массив. |
Ответ: WriteString записывает не только указанное значение
в блице функция WriteLine(str) сначала запишет длинну строки в виде целого числа, а затем собственно саму строку. ReadLine же прочтет сначала длину строки и после этого прочтет количество байт по длинне.
В БМаксе нет такого, там запись идет напрямую и чтение тоже ( тама надо указать длинну читаемой строки вручную ) Насчет INI-файлов зачем изобретать новый велик ? Еще со времен динозавров существуют функции в библиотеке kernel32.dll |
Часовой пояс GMT +4, время: 18:32. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot