关于从数据库取数据写入文本文件…… 从数据库取的字符串中含\r\n回车换行符,在写入文本文件时原样写入了文本文件,而不是表现为回车换行。怎样做到在写入文本文件是直接表现为回车换行,而不是原样把转义字符写入文件? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我用的FileWriter 就没有出现你说的情况...不知道LZ 用的是什么写的... 那个没有,可以直接SELECT '' FROM DUAL这样能查出来回车 下面是我的语句:PrintWriter out=new PrintWriter(new BufferedWriter(new FileWriter(file,true)));……ResultSet rs=……;out.prinln(rs.getString(1));的的确确 存在上述问题! 而且 out.println("a\r\nb");写入文件时已经把转义字符翻译为回车换行了把数据库里的这个串取出写就不行。out.println(rs.getString(1));会把\r\n写入文件 你用out.print();这样应该不会出现回车换行吧,println本身就是回车换行的打印 to fengmingjie(木林森) :试了 没影响 只是末尾少了个回车换行而已 楼主的意思是你的数据库中的内容是: \r\n实际上是 \ , r , \ , n 四个字符,而并不是楼主所想的 '\r', '\n' 两个字符。在 java 源代码中写 "\r\n" 实际上是 2 个字符。楼主需要理解一下转义字符(\)现在的情况,楼主试试:out.println(rs.getString(1).replaceAll("\\\\r\\\\n", "\r\n"));为什么要用四个斜杠,楼主参考:http://www.regexlab.com/zh/regref.htm以及String 的 replaceAll 方法。 to sswater(光杆兵):有道理!问题还是出在我比较心虚的数据保存上!请问回车换行在入库时应该怎样保存,使得我读时直接写文件就可了? 用 write 不是 print .就应该没有问题了. 很简单,完全不变地把数据库里的这个字符串输出到文本文件就OK了.\r\n是不会消失的.呵呵. 好像你是想把\r\n这个回车换行转换为"\r\n"四字符的字符串,我看错了不好意思. to sswater(光杆兵):照您的方法试了 没效果 to AreamArgentateOfWing(梦幻银翼) :用write也没效果 File f = new File("C:\test.txt");f.createNewFile();FileWriter fw = new FileWriter(f);fw.write("_test is now!\n");fw.close();我就能写进去... AreamArgentateOfWing(梦幻银翼):看清问题 File f = new File("C:\test.txt");f.createNewFile();FileWriter fw = new FileWriter(f);fw.write("_test is now!\\r\\n");fw.close(); 求多边形的思路 启动Tomcat时如何隐藏命令提示符窗口 编写一个程序,求2—200之间的素数,并将结果保存在文件prime.dat中。再从该文件中读取内容并在屏幕上显示出来。 java5.0后的枚举问题 笔试题求助 ■■救命,怎样将包内文件夹中的所有图片复制到指定目录,所有图片都打包起来了。 关于 jbuilder 的小问题? 用过JOptionPane的高手(们)过来看看,急!!! 怎样修改文件的属性? java_关于构造方法的问题 大家来看看这段程序啊 !!!!!求做毕业设计 时间紧急
不知道LZ 用的是什么写的...
SELECT '
' FROM DUAL
这样能查出来回车
……
ResultSet rs=……;
out.prinln(rs.getString(1));的的确确 存在上述问题!
out.println("a\r\nb");写入文件时已经把转义字符翻译为回车换行了
把数据库里的这个串取出写就不行。out.println(rs.getString(1));会把\r\n写入文件
实际上是 \ , r , \ , n 四个字符,而并不是楼主所想的 '\r', '\n' 两个字符。在 java 源代码中写 "\r\n" 实际上是 2 个字符。
楼主需要理解一下转义字符(\)现在的情况,楼主试试:
out.println(rs.getString(1).replaceAll("\\\\r\\\\n", "\r\n"));为什么要用四个斜杠,楼主参考:
http://www.regexlab.com/zh/regref.htm
以及
String 的 replaceAll 方法。
照您的方法试了 没效果
f.createNewFile();
FileWriter fw = new FileWriter(f);
fw.write("_test is now!\n");
fw.close();我就能写进去...
f.createNewFile();
FileWriter fw = new FileWriter(f);
fw.write("_test is now!\\r\\n");
fw.close();