日期:2014-05-20  浏览次数:21031 次

Java中如何将字符串按行写入到txt文件中
假设字符串为:str="张三 0 3000 李四 1 5000 王五 0 4000";
如何将str按如下格式写入到txt文件中?
txt中的格式:
张三 0 3000
李四 1 5000
王五 0 4000
求高手解答,谢谢!
------最佳解决方案--------------------

public class Txt {
public static void main(String[] args) {
String str="张三 0 3000 李四 1 5000 王五 0 4000";
String[] str1 = new String[10];
FileWriter writer;
int i=0;
int j=0;
while(i<=str.length()) {
str1[j] = str.substring(i, i+9);
i=i+10;
j=j+1;
}
try {
writer = new FileWriter("C:/Users/Administrator/Desktop/1.txt");
writer.write(str1[0]);
writer.write("\r\n");
writer.write(str1[1]);
writer.write("\r\n");
writer.write(str1[2]);
writer.flush();
writer.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}


结果如下:
张三 0 3000
李四 1 5000
王五 0 4000
------其他解决方案--------------------
需要用正则进行split然后写入
------其他解决方案--------------------
在需要断行的位置,加上换行符 "\n"
------其他解决方案--------------------
我觉得可以用空格分割
然后分组
然后写入文件
------其他解决方案--------------------
import java.io.FileWriter;
import java.io.IOException;


public class T1 {
public static void main(String[] args) {
String str="张三 0 3000\r李四 1 5000\r王五 0 4000";
FileWriter writer;
try {
writer = new FileWriter("/home/1.txt");
writer.write(str);
writer.flush();
writer.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}


------其他解决方案--------------------
引用:
在需要断行的位置,加上换行符 "\n"

简单有效
------其他解决方案--------------------
str="张三 0 3000 \n李四 1 5000 \n王五 0 4000";