У меня есть CSV-файл, содержащий некоторые данные, такие как:
374,Test Comment multiplelines \n Here's the 2nd line,Other_Data
Где 374 - идентификатор объекта от дверей, затем некоторые комментарии, а затем некоторые другие данные.
У меня есть кусок кода, который читает данные из файла CSV, сохраняет их в соответствующих переменных и затем записывает их в объект дверей.
Module Openend_module = edit("path_to_mod", true,true,true)
Object o ;
Column c;
string attrib;
string oneLine ;
string OBJECT_ID = "";
string Comment = "";
String Other_data = "";
int offset;
string split_text(string s)
{
if (findPlainText(s, sub, offset, len, false))
{
return s[0 : offset -1]
}
else
{
return ""
}
}
Stream input = read("Path_to_Input.txt");
input >> oneLine
OBJECT_ID = split_text(oneLine)
oneLine = oneLine[offset+1:]
Comment = split_text(oneLine)
Other_data = oneLine[offset+1:]
При использовании print Comment
вывод в консоли DXL: Test Comment multiplelines \n Here's the 2nd line
for o in Opened_Module do
{
if (o."Absolute Number"""==OBJECT_ID ){
attrib = "Result_Comment " 2
o.attrib = Comment
}
}
Но после записи объекта дверей \n
не учитывается, и результат выглядит следующим образом:
Я пытался поместить строку в буфер и использовать stringOf()
, но escape-символ просто исчез.
Я также попытался добавить \r\n
и \\n
к входному тексту CSV, но все равно не повезло