首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

关于换行的有关问题

2012-02-13 
关于换行的问题我从一个文件中读入一行字符:“skdj\njfie”,为什么输出这行文字的时候没有换行,如果我直接输

关于换行的问题
我从一个文件中读入一行字符:“skdj\njfie”,为什么输出这行文字的时候没有换行,如果我直接输出这行文字:System.out.println(“skdj\njfie”)就有换行,这是为什么?

[解决办法]
回复人:zqrqq(zqrain(结帖是一种美德)) ( 五级(中级)) 信誉:105 2007-06-22 11:00:38 得分:0

String fileContext=读出的文件内容
fileContext.replaceAll( "\\n ", "\n ");
System.out.println(fileContext);
====================================================
to: zqrqq
你这样写是不对的,应该改成:

String fileContext=读出的文件内容
fileContext = fileContext.replaceAll( "\\\\n ", "\n ");
System.out.println(fileContext);
[解决办法]
对不起,看错了

我来解释一下:是 "\\\\n ",而不是 "\\n "
读取文件里的\,没有任何变化
但是,因为replaceAll()的第一个参数是一个政则表达式,为了替换\n,正则表达式应该是\n,但是在正则表达式里面,\是特殊字符,需要转义,所以应该是\\n;但是,在java字符里面\也是特殊字符;所以,需要再次转义,所以就是\\\\n

热点排行