我想删除由于某种原因正在创建的文本文件前面的额外行。这是我正在做的代码:
String line;
while ((line = textReader.readLine()) != null) {
if (!line.contains("//")) textData.add(line);
Pattern pattern = Pattern.compile("//.*$", Pattern.DOTALL);
Matcher matcher = pattern.matcher(line);
line = matcher.replaceFirst("");
如果我删除了if(!line.contains(“//”))textData.add(line);然后没有输出线。这是我用来调用写法的方法:
WriteToFile filetoo = new WriteToFile("/Users/John/Desktop/newtext.txt", true);
filetoo.write(anyLines[i]);
我想从第一行开始并开始写入文件。这是我的文件的样子:
................. // blank space (I want to get rid of this)
line 1
line 2
line 3
虽然我希望它看起来像这样:
line 1
line 2
line 3
有什么建议吗?
答案 0 :(得分:1)
您可以检查该行是否为“空”并跳过它 - if (line.trim().length() != 0)
应告诉您该行是否为“空白”。
答案 1 :(得分:0)
所以它不是一个空行而是匹配RE / ^ \ s * \ / \ /.*/?
我引用的RE应该有用,如果你没有使用/命令,“^ \ s * //。*”
如果它是空白的,可能是这样的:
[编辑]
first = 1;
while ((line = textReader.readLine()) != null) {
if (first)
{
if (matchera.matches("\s*$", line))
{
continue;
}
first = 0;
}