
テキストファイルの任意の単語を含む一行を削除させるプログラムを作成したいです。
例えば、
test.txt
今日は久しぶりに晴れました。
とてもいい天気だったので、ショッピングに。
その後、アップルストアにて新発売のMacを触ってきました。
上記のようなテキストファイル(test.txt)に対して、
データベース等に格納されている単語のリストと参照させ、
リストにある単語を含んでいる行を削除させたテキストファイルを生成させたいです。
例えば、リストに"天気"の単語があれば、
以下のようなテキストファイルを生成させたいです。
result.txt
今日は久しぶりに晴れました。
その後、アップルストアにて新発売のMacを触ってきました。
このようにするには、どのようにプログラムを作成すればよいでしょうか?
よろしくお願いします。
No.2ベストアンサー
- 回答日時:
データベースから拾ってくる方法は考えてください。
"天気”という文字列がない行のみresult.txtに吐き出しています。
import java.io.*;
import java.util.*;
class Editor100 {
public static void main(String args[]){
try{
BufferedReader reader = new BufferedReader(new FileReader("text.txt"));
PrintWriter writer = new PrintWriter(new BufferedWriter(new FileWriter("result.txt")));
String line;
while((line = reader.readLine())!= null){
if((line.indexOf("天気"))==-1){
writer.println(line);
}
}
reader.close();
writer.close();
}
catch(IOException e){
System.out.println(e);
}
}
}
No.3
- 回答日時:
#2さんのindexOfをsubstringにしてみました。
import java.io.*;
public class Sample {
public static void main(String[] args){
try{
BufferedReader br=
new BufferedReader(new FileReader("C:\\test.txt"));
PrintWriter pw=
new PrintWriter(new BufferedWriter(new FileWriter("C:\\result.txt")));
String str;
int flag=0;
while ((str = br.readLine())!= null) {
if(str.length()==0){ break;}
flag=0;
for(int i=0;i<str.length()-2;i++){
if(str.substring(i,i+2).equals("天気")){
flag=1;
}
}
if(flag==0){
pw.println(str);
}
}
pw.close();
br.close();
}catch(IOException e){
System.out.println("IOエラー");
}
}
}
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
yyyymmddからyyyy/mm/d...
-
JAVAでエラーがでる。
-
Servletでテキストボックスに入...
-
BufferedReaderでのエラー
-
equalsの逆
-
Class.forNameでエラーになる
-
javaでCSVの中身から最大値を表...
-
Javaでデータに登録する度にID...
-
[JAVA]エラーが解決できません。
-
IF関数でEmpty値を設定する方法。
-
オブジェクトの中のプロパティ...
-
動的配列が存在(要素が有る)か...
-
System.err. printlnとSystem.o...
-
C言語のポインターに関する警告
-
JSPやサーブレットでSystem.out...
-
javaです。 途中まで出来ている...
-
flush()とclose()について
-
ループ処理の際、最後だけ","を...
-
java キーボード入力された値の...
-
この警告はどうすれば?
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
yyyymmddからyyyy/mm/d...
-
csv出力について
-
Javaでデータに登録する度にID...
-
[JAVA]エラーが解決できません。
-
Class.forNameでエラーになる
-
Java int sum = 0は必要ですか?
-
Javaの質問です。テキストファ...
-
javaプログラミングの質問です。
-
equalsの逆
-
ファイル読込みにおける改行表...
-
九九を横に表示する。
-
Servletでテキストボックスに入...
-
BufferedReaderでのエラー
-
Javaの質問です。テキストファ...
-
テキストファイルから空白行をよむ
-
文字列について(続き)
-
javaのfor文が機能してないみた...
-
Pleiades4.4でVectorの使用
-
printfを使って出力
-
ファイルの読み飛ばしが出来ま...
おすすめ情報