テキストファイルの任意の単語を含む一行を削除させるプログラムを作成したいです。
例えば、
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で質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) エクセルのマクロについて教えてください。 4 2023/02/05 09:55
- Excel(エクセル) 【VBA】指定フォルダに格納中のテキストファイルをエクセルで処理し結果のエクセルを新規フォルダに保存 1 2022/03/25 14:19
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/08/08 11:02
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/16 14:36
- Visual Basic(VBA) VBAでエクセルをtxtに変換するとエクセルでカンマを含む文字数字がtxtでは「""」付にならないよ 1 2022/08/27 12:17
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/21 09:42
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/15 15:48
- その他(プログラミング・Web制作) Pythonの質問です テキストファイルをこのように自動生成したいのですがどうすれば良いでしょうか. 2 2022/08/25 21:28
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/15 15:12
- その他(プログラミング・Web制作) 2つのテキストファイルを比べて文字列を特定する方法を教えて下さい 5 2022/05/01 15:22
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Java 読み込んだテキストファイ...
-
InputStream.read()でタイムア...
-
java連結
-
配列にnullを代入すると、null...
-
C#で動的配列Listの中身をListB...
-
C言語のポインターに関する警告
-
Javaで改行などが出来ないのです。
-
c# デリゲート関連の命名について
-
配列を逆順させて表示させる方...
-
応用情報技術者試験の令和元年...
-
getStringの値がNULLの時の処理
-
Path型をString型へ変換する(Java)
-
[JAVA]try 内の変数を外で!?
-
クラスを使った電卓のプログラム
-
system.out.printが出力されない
-
getName()で取得したファイル名...
-
長方形を描いて、それを移動さ...
-
動的配列確保
-
processingで String str="AAAB...
-
VBAで配列の計算
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
yyyymmddからyyyy/mm/d...
-
equalsの逆
-
csv出力について
-
九九を横に表示する。
-
InputStream.read()でタイムア...
-
テキストファイルから空白行をよむ
-
Java int sum = 0は必要ですか?
-
javaのfor文が機能してないみた...
-
BufferedReaderでのエラー
-
Javaの質問です。テキストファ...
-
以下のJAVAプログラムでご質問...
-
Class.forNameでエラーになる
-
ソケットを使ったサーバとクラ...
-
テキストファイルにおいて任意...
-
JAVAでエラーがでる。
-
テキストファイルの任意の文字...
-
Web上に表示されたデータをcsv...
-
Inputstreamについて
-
[JAVA]エラーが解決できません。
-
Windowsでの標準入力の終了の仕方
おすすめ情報