我试图从给定的文本文件中替换某个字符串的出现。下面是我写的代码:从文本文件中替换特定的字符串
BufferedReader tempFileReader = new BufferedReader(new InputStreamReader(new FileInputStream(tempFile)));
File tempFileBuiltForUse = new File("C:\\testing\\anotherTempFile.txt");
Writer changer = new BufferedWriter(new FileWriter(tempFileBuiltForUse));
String lineContents ;
while((lineContents = tempFileReader.readLine()) != null)
{
Pattern pattern = Pattern.compile("/.");
Matcher matcher = pattern.matcher(lineContents);
String lineByLine = null;
while(matcher.find())
{
lineByLine = lineContents.replaceAll(matcher.group(),System.getProperty("line.separator"));
changer.write(lineByLine);
}
}
changer.close();
tempFileReader.close();
假设我tempFile
内容:
This/DT is/VBZ a/DT sample/NN text/NN ./.
我想anotherTempFile
包含:
This/DT is/VBZ a/DT sample/NN text/NN .
用一个新行。
但我没有得到所需的输出。而且我无法看到我要出错的地方。 :-( 请帮助。:-)
好多了。但是现在,生成的输出是换行符中的每个单词。仍然不是我想要的。 – 2012-03-13 16:01:42
我改正了我的建议,所以它只匹配'./。' – devsnd 2012-03-13 16:06:54
只需稍作修改,即可匹配的模式。只是'/ .'它会和你以前的建议一样吗? – 2012-03-13 16:09:24