code_1954.txt
Недостаток - если нужно изменить сами данные, то придётся считывать коммент, потом стирать, записывать данные, а затем снова загонять коммент...
Или можно использовать компонент (тоже Upload'овский)
Add(OperationsCombinedFiles,9469594,406,190)
{
FileName="C:\файл1.txt"
link(DataWr,33599:Value,[(419,180)(391,180)(391,232)(349,232)])
}
Add(Button,16122619,175,190)
{
Left=10
Top=5
Caption="++"
link(onClick,889390:doEvent1,[])
}
Add(Memo,4252655,287,253)
{
Left=110
Top=35
Width=150
Height=230
Strings=#11:комментарий|1:к|5:этому|5:файлу|
}
Add(ListBox,414414,287,64)
{
Left=10
Top=35
Width=95
Height=230
Strings=#2:s1|2:s2|2:s3|2:s4|6:итд...|
}
Add(Hub,889390,231,190)
{
link(onEvent1,280608:doConvert,[])
link(onEvent2,9366798:doConvert,[(275,203)(275,350)])
}
Add(Convertor,280608,287,190)
{
Mode=12
link(onResult,33599:doValue,[])
link(Data,414414:Text,[])
}
Add(Memory,33599,343,190)
{
link(onData,9469594:doDataWrite,[])
}
Add(OperationsCombinedFiles,7582049,406,344)
{
FileName="C:\файл1.txt"
link(DataWr,9283732:Value,[(419,334)(391,334)(391,386)(349,386)])
}
Add(Convertor,9366798,287,344)
{
Mode=12
link(onResult,9283732:doValue,[])
link(Data,4252655:Text,[])
}
Add(Memory,9283732,343,344)
{
link(onData,7582049:doDataWrite,[])
}
Таким образом создана структура файла: на первом месте данные, на втором - комеентарий к ним. Метод doDataReplace заменит данные на нужном месте (первом или втором в этом случае), и нет необходимости усложнять действия по измнению данных или комментария.