我正在从 UniVerse 的文件中读取数据,其中一些记录包含导致换行符的特殊字符。有没有办法把这些去掉?有些是 ASCII 255,但也有一些其他的。我对宇宙很陌生。我正在使用 C# 和 U2 Toolkit for .NET。这是我的代码:
U2Connection con = GetConnection();
UniSession us1 = con.UniSession;
UniSelectList s1 = us1.CreateUniSelectList(0);
UniFile f1 = us1.CreateUniFile("CM");
s1.Select(f1);
bool lLastRecord = s1.LastRecordRead;
List<string> lRecIdList = new List<string>();
while (!lLastRecord)
{
string sRecID = s1.Next();
if (!lRecIdList.Contains(sRecID))
{
lRecIdList.Add(sRecID);
}
lLastRecord = s1.LastRecordRead;
}
UniDataSet uSet = f1.ReadRecords(lRecIdList.ToArray());
int count = 1;
foreach (UniRecord item in uSet)
{
try
{
Console.WriteLine(count + " - " + item.RecordID + " - " + item.Record);
count++;
}
catch (Exception ex)
{
Console.WriteLine(ex);
count++;
}
}
con.Close();
有了良好的数据,输出如下所示:
1 - 01*1234 - field1þfield2þfield3þfield4þfield5
2 - 01*5678 - field1þfield2þfield3þfield4þfield5
但是,如果数据中有这些特殊字符之一,比如在第一条记录的 field3 中,它看起来像这样:
1 - 01*1234 - field1þfield2þfield3
2 - 01*5678 - field4þfield5
...然后第三条记录 ID 将包含第二条记录的数据。
任何帮助,将不胜感激!
目前我正在通过让某人进入并直接编辑数据来解决这个问题,但是有 90,000 条记录,每 500 条左右的记录就有一个错误。