- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:タグ以外の文字を取り出す2)
タグ以外の文字を取り出す2
このQ&Aのポイント
- //ファイルに書き込む用意をします。ここではsource.txtというファイルに書き込みます。PrintWriter pw = new PrintWriter(new FileWriter("honbun.txt")); line = reader.readLine(); while(line != null && line.indexOf("<div class=\"main\">") == -1){line = reader.readLine();} while(line != null && line.indexOf ("</div>") == -1){for(i=0; i<line.length() ; i++){c = line.charAt(i);if(c=='<'){while('>' != line.charAt(i)){i++;}}else{pw.println(c);}}line = reader.readLine();}pw.println(line);reader.close();pw.close();}catch(MalformedURLException e){System.out.println(e);}catch(IOException e){System.out.println(e);}catch(Exception e){System.out.println(e);}}}
- ファイルに書き込む準備をします。ここではsource.txtというファイルに書き込みます。PrintWriter pw = new PrintWriter(new FileWriter("honbun.txt")); line = reader.readLine(); while(line != null && line.indexOf("<div class=\"main\">") == -1){line = reader.readLine();} while(line != null && line.indexOf("</div>") == -1){for(i=0; i<line.length(); i++){c = line.charAt(i);if(c=='<'){while('>' != line.charAt(i)){i++;}}else{pw.println(c);}}line = reader.readLine();}pw.println(line);reader.close();pw.close();}catch(MalformedURLException e){System.out.println(e);}catch(IOException e){System.out.println(e);}catch(Exception e){System.out.println(e);}}
- //ファイルに書き込むための準備をします。ここではsource.txtというファイルに書き込みます。PrintWriter pw = new PrintWriter(new FileWriter("honbun.txt"));line = reader.readLine();while(line != null && line.indexOf("<div class=\"main\">") == -1){line = reader.readLine();}while(line != null && line.indexOf("</div>") == -1){for(i=0; i<line.length(); i++){c = line.charAt(i);if(c=='<'){while('>' != line.charAt(i)){i++;}}else{pw.println(c);}}line = reader.readLine();}pw.println(line);reader.close();pw.close();}catch(MalformedURLException e){System.out.println(e);}catch(IOException e){System.out.println(e);}catch(Exception e){System.out.println(e);}}
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
pw.println(c); を、 pw.print(c); にしてやれば改行はなくなります。 '>'であった場合、またはi=line.length()-1であった場合は、 pw.print("\n"); を行うと、行の最後に改行がつきます。 line.indexOf ("</div>") が-1でなかった場合も、同じ処理を行ってからwhile文を抜けるようにしてください。
お礼
ありがとうございます!!! 助かりました!