Вверх ↑
Этот топик читают: Гость
Ответов: 110
Рейтинг: 5
#1: 2012-03-18 19:41:57 ЛС | профиль | цитата
Как правильно сохранить файл из OnRead, чтобы можно было параллельно пользоваться сохраняющимися данными?
карма: 0

0
Ответов: 3889
Рейтинг: 362
#2: 2012-03-18 19:56:15 ЛС | профиль | цитата
Doaxan, TCP_Client не работает с понятиями файла, он работает с блоками данных, которые ему послали, принимайте их куда Вам удобно и работайте, сохраняйте и т.д. Для этого множество других элементов в соответсвующих вкладках палитры, собственно, и придумано. Ответы на "как сохранить в файл?" и прочее есть в справке, примерах к среде и, конечно, их внушительное количество на форуме.
карма: 1

1
Голосовали:Doaxan
Ответов: 110
Рейтинг: 5
#3: 2012-03-18 23:32:39 ЛС | профиль | цитата
Пытаюсь сохранить так:
code_27227.txt

Но ничего не происходит, хотя в RichEdit всё отображается
карма: 0

0
файлы: 1code_27227.txt [305B] [126]
Ответов: 1841
Рейтинг: 369
#4: 2012-03-18 23:47:02 ЛС | профиль | цитата
TCP_ClientStrCatConvertorFileStream

code_27228.txt
------------ Дoбавленo в 23.47:
Так же желательно в запросе указывать -> Connection: Close
карма: 1
0
файлы: 1code_27228.txt [551B] [90]
Ответов: 3889
Рейтинг: 362
#5: 2012-03-18 23:47:19 ЛС | профиль | цитата
CriDos, в его случае можно просто добавить Convertor, накопление произойдёт само собой. Либо копить в StrList, Memo и т.п., коли нужно потом работать с данными в памяти.
карма: 1

0
Ответов: 1376
Рейтинг: 197
#6: 2012-03-18 23:48:50 ЛС | профиль | цитата
Doaxan писал(а):
хотя в RichEdit всё отображается
попробовать у StrList использовать точку doAppend

Add(TCP_Client,3857686,581,133)
{
Port=80
}
Add(StrList,12300178,679,77)
{
FileName="1.txt"
Point(doAppend)
}
Add(Button,3154053,469,91)
{
Left=110
Top=80
Data=String()
link(onClick,15865969:doNext,[])
}
Add(CounterEx,15865969,525,91)
{
link(onNext,10375384:doStrCat,[])
}
Add(StrCat,10375384,581,91)
{
Str2="_fasdfasdfgasdf"
link(onStrCat,5070301:doEvent1,[])
}
Add(Hub,5070301,623,91)
{
link(onEvent1,12300178:doText,[(666,97)(666,104)])
link(onEvent2,12300178:doAppend,[(658,104)(658,125)])
}


карма: 1

0
Ответов: 110
Рейтинг: 5
#7: 2012-03-19 00:27:09 ЛС | профиль | цитата
Convertor без StrCat в моем случае не подошел. И есть ли способы, чтобы все писалось сразу на диск, иначе программа начинает есть много оперативки + тормозит.
карма: 0

0
Ответов: 3889
Рейтинг: 362
#8: 2012-03-19 00:32:16 ЛС | профиль | цитата
Doaxan писал(а):
способы, чтобы все писалось сразу на диск
1nd1g0 писал(а):
просто добавить Convertor
Либо копить списками и писать блоками, очищая список после записи.
карма: 1

0
Ответов: 1841
Рейтинг: 369
#9: 2012-03-19 00:46:22 ЛС | профиль | цитата
Так? (последний вариант т.к. я спать ушёл)
code_27229.txt
карма: 1
0
файлы: 1code_27229.txt [1.4KB] [92]
Ответов: 110
Рейтинг: 5
#10: 2012-03-19 12:20:56 ЛС | профиль | цитата
CriDos, спасибо, то что нужно! Но вот еще проблема:
code_27231.txt
Как это можно удалить, сразу при получении первого блока данных, причем данные постоянно могут меняться? Может быть есть способ удалить сразу 9 строк? Delete удаляет посимвольно.
карма: 0

0
файлы: 1code_27231.txt [317B] [105]
Ответов: 1841
Рейтинг: 369
#11: 2012-03-19 13:13:35 ЛС | профиль | цитата
Doaxan, BlockFind
карма: 1
0
11
Сообщение
...
Прикрепленные файлы
(файлы не залиты)