c#保存到txt和data.txt中的新行时出现问题
我有个问题。我必须将数字保存到txt(它的含义并不重要)。我希望数字之间有空格。 当我尝试在没有空格的情况下保存它时,效果很好 这是我没有空格的代码c#保存到txt和data.txt中的新行时出现问题,c#,newline,saving-data,C#,Newline,Saving Data,我有个问题。我必须将数字保存到txt(它的含义并不重要)。我希望数字之间有空格。 当我尝试在没有空格的情况下保存它时,效果很好 这是我没有空格的代码 if (x_dolny > x1_sqr && x_dolny < x2_sqr) { using (StreamWriter streamW = new StreamWriter("C:\\Users\\Desktop\\outputdata.txt", true)) { streamW.Wr
if (x_dolny > x1_sqr && x_dolny < x2_sqr)
{
using (StreamWriter streamW = new StreamWriter("C:\\Users\\Desktop\\outputdata.txt", true))
{
streamW.Write("1");
}
}
else if (y_prawy < y1_sqr && y_prawy > y2_sqr)
{
using (StreamWriter streamW = new StreamWriter("C:\\Users\\Desktop\\outputdata.txt", true))
{
streamW.Write("1");
}
}
else if (delta >= 0.0)
{
using (StreamWriter streamW = new StreamWriter("C:\\Users\\Desktop\\outputdata.txt", true))
{
streamW.Write("2");
}
}
else
{
using (StreamWriter streamW = new StreamWriter("C:\\Users\\Desktop\\outputdata.txt", true))
{
streamW.Write("0");
}
}
using (StreamWriter streamW = new StreamWriter("C:\\Users\\Desktop\\outputdata.txt", true))
{
streamW.WriteLine("New line");
}
但是文件看起来像这样
我不明白为什么它会切断我的线路并转到下一条线路。。。
有什么想法吗?正如@Sinatr在评论中提到的,这可能只是您的文本编辑器中的一个换行问题 不过,这段代码实际上可以进行一些重构,使其更简单、更易于阅读和理解
using (var streamWriter = new StreamWriter(@"C:\Users\Desktop\outputdata.txt", true))
{
string message = "0";
if (MessageIs1(x_dolny, x1_sqr, x2_sqr, y_prawy, y1_sqr, y2_sqr))
message = "1";
else if (delta >= 0.0)
message = "2";
streamWriter.Write(message);
streamWriter.WriteLine("New line");
}
// ...
private static bool MessageIs1(int x_dolny, int x1_sqr, int x2_sqr,
int y_prawy, int y1_sqr, int y2_sqr)
{
return (x_dolny > x1_sqr && x_dolny < x2_sqr)
|| (y_prawy < y1_sqr && y_prawy > y2_sqr);
}
使用(var streamWriter=newstreamwriter(@“C:\Users\Desktop\outputdata.txt”,true))
{
字符串消息=“0”;
如果(消息是1(x_-dolny,x1_-sqr,x2_-sqr,y_-prawy,y1_-sqr,y2_-sqr))
message=“1”;
否则如果(增量>=0.0)
message=“2”;
streamWriter.Write(消息);
streamWriter.WriteLine(“新线”);
}
// ...
私有静态bool消息是1(int x_dolny,int x1_sqr,int x2_sqr,
内部y_prawy、内部y1_sqr、内部y2_sqr)
{
返回(x_-dolny>x1_-sqr&&x_-dolnyy2_sqr);
}
以下是一些建议:
if
语句的每个分支中,甚至在之后,都重用了StreamWriter
。不要使用语句多次键入,而是使用
语句将其全部打包成一个。试着遵循规则(不要重复你自己)
新的对象),可以使用var
x_-dolny
,x1_-sqr
,x2_-sqr
,y-prawy
,y1_-sqr
,y2_-sqr
,MessageIs1
正如@Sinatr在评论中提到的,这可能只是文本编辑器中的一个换行问题 不过,这段代码实际上可以进行一些重构,使其更简单、更易于阅读和理解
using (var streamWriter = new StreamWriter(@"C:\Users\Desktop\outputdata.txt", true))
{
string message = "0";
if (MessageIs1(x_dolny, x1_sqr, x2_sqr, y_prawy, y1_sqr, y2_sqr))
message = "1";
else if (delta >= 0.0)
message = "2";
streamWriter.Write(message);
streamWriter.WriteLine("New line");
}
// ...
private static bool MessageIs1(int x_dolny, int x1_sqr, int x2_sqr,
int y_prawy, int y1_sqr, int y2_sqr)
{
return (x_dolny > x1_sqr && x_dolny < x2_sqr)
|| (y_prawy < y1_sqr && y_prawy > y2_sqr);
}
使用(var streamWriter=newstreamwriter(@“C:\Users\Desktop\outputdata.txt”,true))
{
字符串消息=“0”;
如果(消息是1(x_-dolny,x1_-sqr,x2_-sqr,y_-prawy,y1_-sqr,y2_-sqr))
message=“1”;
否则如果(增量>=0.0)
message=“2”;
streamWriter.Write(消息);
streamWriter.WriteLine(“新线”);
}
// ...
私有静态bool消息是1(int x_dolny,int x1_sqr,int x2_sqr,
内部y_prawy、内部y1_sqr、内部y2_sqr)
{
返回(x_-dolny>x1_-sqr&&x_-dolnyy2_sqr);
}
以下是一些建议:
if
语句的每个分支中,甚至在之后,都重用了StreamWriter
。不要使用语句多次键入,而是使用
语句将其全部打包成一个。试着遵循规则(不要重复你自己)
新的对象),可以使用var
x_-dolny
,x1_-sqr
,x2_-sqr
,y-prawy
,y1_-sqr
,y2_-sqr
,MessageIs1
记事本菜单-格式-文字换行。。是否已选中?您还可以通过尝试展开记事本窗口来验证它是否为自动换行。如果是换行,当窗口变大时,文本将四处移动,直到窗口足够长,可以放在一行上。记事本菜单-格式-换行。。是否已选中?您还可以通过尝试展开记事本窗口来验证它是否为自动换行。如果是换行,随着窗口变大,文本将四处移动,直到窗口足够长,可以在一行上。