我遇到了一个文本文件,文本格式如下:
C:\Users\Admin\Documents\report2011.docx: My Report 2011
C:\Users\Admin\Documents\newposter.docx: Dinner Party Poster 08
如何修剪文本文件,修剪“:”及其后的所有字符。
例如所以输出会是这样的:
C:\Users\Admin\Documents\report2011.docx
C:\Users\Admin\Documents\newposter.docx
Current Code:
private void button1_Click(object sender, EventArgs e)
{
using (StreamWriter sw = File.AppendText(@"c:\output.txt"))
{
StreamReader sr = new StreamReader(@"c:\filename.txt");
Regex reg = new Regex(@"\w\:(.(?!\:))+");
List<string> parsedStrings = new List<string>();
while (sr.EndOfStream)
{
sw.WriteLine(reg.Match(sr.ReadLine()).Value);
}
}
}
不工作:(
最佳答案
int index = myString.LastIndexOf(":");
if (index > 0)
myString= myString.Substring(0, index);
编辑 - 根据修改后的问题添加答案。它可以稍微压缩,但为了清楚地说明发生了什么而将其展开。
using (StreamWriter sw = File.AppendText(@"c:\output.txt"))
{
using(StreamReader sr = new StreamReader(@"input.txt"))
{
string myString = "";
while (!sr.EndOfStream)
{
myString = sr.ReadLine();
int index = myString.LastIndexOf(":");
if (index > 0)
myString = myString.Substring(0, index);
sw.WriteLine(myString);
}
}
}
关于c# - 在 C# 中修剪部分文本文件的代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6283586/