Java 如何用用户输入的变量替换文本文件中多次出现的字符串,并将所有字符串保存到新文件中?
}关于示例代码的几点建议:Java 如何用用户输入的变量替换文本文件中多次出现的字符串,并将所有字符串保存到新文件中?,java,Java,}关于示例代码的几点建议: 让用户在命令行上传入旧的和新的(即args[0]和args) 如果一次只做一行就足够了,那么读取一行,替换旧的->新的,然后将其流式输出,将会更加高效 另外,请查看和,在这种情况下,这可能会使您的生活更轻松。关于示例代码的几点建议: 让用户在命令行上传入旧的和新的(即args[0]和args) 如果一次只做一行就足够了,那么读取一行,替换旧的->新的,然后将其流式输出,将会更加高效 另外,请查看和,这可能会使您的生活更轻松。最简单的是String.replace(ol
另外,请查看和,在这种情况下,这可能会使您的生活更轻松。关于示例代码的几点建议:
另外,请查看和,这可能会使您的生活更轻松。最简单的是String.replace(oldstring,newstring)或String.replaceAll(regex,newstring)函数,您只需读取一个文件并将替换写入一个新文件(如果您关心文件大小,也可以逐行执行)。最简单的是String.replace(oldstring、newstring)或String.replaceAll(regex、newstring)函数,您只需读取一个文件并将替换内容写入一个新文件(如果您关心文件大小,也可以逐行执行)阅读您的最后一条评论后,这是一个完全不同的故事…首选的解决方案是将css文件解析为对象模型(如DOM),在那里应用更改,然后将模型序列化到css。在DOM中查找并更改所有颜色属性比在搜索和替换中执行相同操作要容易得多 我在wild web中发现了一些CSS解析器,但没有一个能够编写CSS文件 如果要将颜色名称替换为搜索和替换,则应搜索“color:”并将其替换为“color:”。可能必须对“color:”,执行相同操作,因为颜色名称可以用双引号设置(另一个用于使用CSS解析器的参数)
String.replaceAll()是最简单的方法。只需将完整的CSS文件读入一个字符串,按照上面的建议全部替换,然后将新字符串写入同一个(或临时)文件(首先)阅读您的最后一条评论后,这是一个完全不同的故事…首选的解决方案是将css文件解析为对象模型(如DOM),在那里应用更改,然后将模型序列化到css。在DOM中查找并更改所有颜色属性比在搜索和替换中执行相同操作要容易得多 我在wild web中发现了一些CSS解析器,但没有一个能够编写CSS文件 如果要将颜色名称替换为搜索和替换,则应搜索“color:”并将其替换为“color:”。可能必须对“color:”,执行相同操作,因为颜色名称可以用双引号设置(另一个用于使用CSS解析器的参数)
String.replaceAll()是最简单的方法。只需将完整的CSS文件读入一个字符串,按照上面的建议全部替换,然后将新字符串写入同一个(或临时)文件(首先)。您到底在问什么?您的代码有问题吗?如何获取用户输入为“blue,etc”的变量“color”我正在转换为十六进制,并将我的JavaBean转换成文本文件(实际上是CSS文件);-)。你到底在问什么?您的代码有问题吗?如何获取用户输入的变量“color”,即“blue,etc”,我正在将其转换为十六进制,并将java bean中的变量转换为文本文件(实际上是CSS文件);-)。
public static void main(String args[])
{
try
{
File file = new File("input.txt");
BufferedReader reader = new BufferedReader(new FileReader(file));
String line = "000000", oldtext = "414141";
while((line = reader.readLine()) != null)
{
oldtext += line + "\r\n";
}
reader.close();
// replace a word in a file
//String newtext = oldtext.replaceAll("drink", "Love");
//To replace a line in a file
String newtext = oldtext.replaceAll("This is test string 20000", "blah blah blah");
FileWriter writer = new FileWriter("input.txt");
writer.write(newtext);writer.close();
}
catch (IOException ioe)
{
ioe.printStackTrace();
}
}