我有一个看起来像这样的文件:
"sdfkhsdf,sdfgsg,sdfsdf,sdsdf"
"sdfsdf,"43534",sdfsdf,24234,sfddsf"
"efsdf,234234,sdfsdf,234234,sadfsdf"
我需要删除文件中每一行的第一个和最后一个字符(我需要删除第一个双引号和最后一个双引号)。请注意,数据中可能包含引号,但绝对不需要第一个和最后一个引号。
最有效的方法是什么?
我有一个看起来像这样的文件:
"sdfkhsdf,sdfgsg,sdfsdf,sdsdf"
"sdfsdf,"43534",sdfsdf,24234,sfddsf"
"efsdf,234234,sdfsdf,234234,sadfsdf"
我需要删除文件中每一行的第一个和最后一个字符(我需要删除第一个双引号和最后一个双引号)。请注意,数据中可能包含引号,但绝对不需要第一个和最后一个引号。
最有效的方法是什么?
如果您没有以下行,请使用string.Trim :""sdfsdf", 43534,sdfsdf,24234,"sfddsf""
line.Trim('"');
如果它真的只是第一个和最后一个字符,我会做类似的事情:
using (var text = System.IO.File.ReadAllLines(filename))
{
using (var outfile = System.IO.File.CreateText(newfilename))
{
foreach (var line in text)
{
if (line.Length > 2)
outfile.WriteLine(line.Substring(1, line.Length - 2));
else
outfile.WriteLine(line);
}
outfile.Flush();
}
}
是的,在这种情况下 Trim(...) 更好。