Geo*_*ell 9 c# file text-files
例如,我有一个txt文件,内容如下:
12 345 45
2342 234 45 2 2 45345
234 546 34 3 45 65 765
12 23 434 34 56 76 5
Run Code Online (Sandbox Code Playgroud)
我想在所有数字之间插入一个逗号,在每行的开头添加左括号,在每行的末尾添加右括号.所以在编辑之后它应该是:
{12, 345, 45}
{2342, 234, 45, 2, 2, 45345}
{234, 546, 34, 3, 45, 65, 765}
{12, 23, 434, 34, 56, 76, 5}
Run Code Online (Sandbox Code Playgroud)
我该怎么做?
aan*_*und 18
添加了一些LINQ以获得乐趣和利润(优化空间;)):
System.IO.File.WriteAllLines(
"outfilename.txt",
System.IO.File.ReadAllLines("infilename.txt").Select(line =>
"{" +
string.Join(", ",
line.Split(new string[] { " " }, StringSplitOptions.RemoveEmptyEntries)
) + "}"
).ToArray()
);
Run Code Online (Sandbox Code Playgroud)
Mar*_*man 13
像这样:(未测试)
string filename = @"c:\yourfilename.txt";
StringBuilder result = new StringBuilder();
if (System.IO.File.Exists(filename))
{
using (StreamReader streamReader = new StreamReader(filename))
{
String line;
while ((line = streamReader.ReadLine()) != null)
{
string newLine = String.Concat("{", line, "}", Environment.NewLine);
newLine = newLine.Replace(" ", ", ");
result.Append(newLine);
}
}
}
using (FileStream fileStream = new FileStream(filename , fileMode, fileAccess))
{
StreamWriter streamWriter = new StreamWriter(fileStream);
streamWriter.Write(result);
streamWriter.Close();
fileStream.Close();
}
Run Code Online (Sandbox Code Playgroud)
小智 5
你应该首先处理逻辑,而不是直接要求人们为你提供.至于读/写文件,你去:
//write
FileStream fs = new FileStream("file_name", FileMode.Create);
StreamWriter w = new StreamWriter(fs, Encoding.UTF8);
w.WriteLine("text_to_write");
w.Flush();
w.Close();
fs.Close();
//read
fs = new FileStream("file_name", FileMode.Open);
StreamReader r = new StreamReader(fs, Encoding.UTF8);
Console.WriteLine(r.ReadLine());
r.Close();
fs.Close();
Run Code Online (Sandbox Code Playgroud)