假设我有一个txt文件,其中包含整个词典。我将如何使这段代码仅将5个字母的单词转换为新创建的txt文件?
import java.io.*;
public class wordwebster {
public static void main(String[] args) throws IOException {
int five = 0;
File directory = new File(".");
String webster = directory.getCanonicalPath() + File.separator+ "webster.txt";
String fiveLetterWords = directory.getCanonicalPath()+ File.separator +"fiveLetterWords.txt";
File fin = new File(webster);
FileInputStream file = new FileInputStream(fin);
BufferedReader input = new BufferedReader(new InputStreamReader(file));
FileWriter fileStream = new FileWriter(fiveLetterWords,true);
BufferedWriter output = new BufferedWriter(fileStream);
String line = null;
while ((line = input.readLine())!= null){
output.write(line);
output.newLine();
}
input.close();
output.close();
}
}
编辑:
根据要求,假设输入文件(webster.txt)包含单词
Sentence
Frequent
Hello
Send
Variety
False
我只需要提取五个字母词(Hello和False)并将其放入一个新文件(fiveLetterWords.txt)中。
答案 0 :(得分:1)
如果您只需要允许长度恰好为五个的单词,则可以在写入文件之前放置一个if条件进行检查。修改您的while循环,
while ((line = input.readLine()) != null) {
if (line.trim().length() == 5) {
output.write(line);
output.newLine();
}
}
希望这会有所帮助。让我知道您是否遇到任何问题。