我在这里搜索了一下,似乎没有关于替换制表符的主题,我想知道是否有人可以向我推荐任何简单的方法来替换4x'space'字符的制表符5,000个文件!这些文件是SVN服务器上的.java
文件。
我可以想一些使用java(我最熟悉的语言)阅读文件并替换这种方式的方法,但我相信这可能是一种更简单的方法!
答案 0 :(得分:1)
从概念上讲,没有比打开文件,搜索标签更简单的方法了 并根据需要用4个空格字符替换它们中的每一个。你好吗? 做到这一点:这完全取决于你。
答案 1 :(得分:1)
当然可以。但是你需要知道这些文件的编码。
使用shell的快速解决方案,前提是这是一个Unix系统(如果是Windows,那么,安装cygwin):
find thedir -type f -exec perl -pi -e 's,\t, ,g' {} \;
完成。
使用Java,我希望您使用的是Java 7+。如果是,这很容易:使用Files.walkFileTree()
,例如将所有常规文件收集到List
中,当您拥有该文件时,对列表中的每个文件执行替换。不要在FileVisitor
本身执行此操作,您可能会获得DirectoryIteratorException
。
可以提供帮助的链接:
此外,非常重要的是,请勿在线修改文件。这不行。创建一个临时文件,在其中写入新内容,然后重命名为原始文件。
答案 2 :(得分:0)
如果您熟悉Java 7
,则会大大改进NIO
包。从目录中读取/写入和访问文件变得非常容易。你应该试一试。
答案 3 :(得分:0)
在Eclipse中,您可以立即重新格式化所有项目文件。右键单击您的根包,然后转到Source - >格式。
答案 4 :(得分:0)
使用:
String fileContent = new Scanner(new File("file.txt")).useDelimiter("\\Z").next();
然后:
String newFileContent = fileContent.replaceAll("\t", " ");
答案 5 :(得分:-1)
试试这个:
inputString = inputString.replaceAll("\t", " ")