- 締切済み
動くようにプログラムしてください
public class HTMLDocument { private String source; public void setSource( String html ) { if ( html.indexOf("<html>") == 0 ) source = html; } public String getSource() { return source; } public void showPlainText() { (必要なコードをここに書く) } } コンパイルはできますがメインメソッドがないため実行できません。分かる方お願いします。
- みんなの回答 (4)
- 専門家の回答
みんなの回答
- salsberry
- ベストアンサー率69% (495/711)
>のどれかのコードを書くということでしょうか? @ITのその連載の例題を第1回から一つずつ順番にこなしていけば、そういう疑問は出ないはずです。
- salsberry
- ベストアンサー率69% (495/711)
そのリンク先のページにちゃんと「HTMLDocumentを利用するプログラム」と題してPackageTestクラスが載っていて、メインメソッドもありますよ。
補足
import jp.co.atmarkit.java.HTMLDocument; public class PackageTest { public static void main( String args[] ) { HTMLDocument doc = new HTMLDocument(); doc.setSource("<html>TEXT</html>"); } } のどれかのコードを書くということでしょうか?
- salsberry
- ベストアンサー率69% (495/711)
質問者さん(あるいは出題者)がどういう動作を求めているのかが分からないので、誰にも答えようがありません。
補足
http://www.atmarkit.co.jp/fjava/rensai2/javaent10/javaent10.html というサイト(今からはじめるジャバというサイト)に課題が載っています。パッケージ宣言付きのHTMLDocumentというタイトルの下に同じプログラムが書いてあります。これを参考に考えてもらえないでしょうか。 宜しくお願いします!
- Tacosan
- ベストアンサー率23% (3656/15482)
「動くように」するだけなら public static void main(String [] args) { } をいれれば終わり.
補足
そのようにやってみましたが、 HTMLDocument.java:11: 式の開始が不正です。 public static void main(String [] args) { } ^ HTMLDocument.java:12: ';' がありません。 } ^ エラー 2 個 となってコンパイルできなくなってしまいました↓
お礼
/package jp.co.atmarkit.java; public class HTMLDocument { public String source; public void setSource( String html ) { if ( html.indexOf("<html>") == 0 ) source = html; } public String getSource() { return source; } public void showPlainText() { boolean processingTag = false; int pos; int start = 0; for ( pos = 0; pos < source.length(); pos++ ) { // タグ if (processingTag) { if ( source.charAt(pos) != '>' ) { for ( pos++; pos < source.length(); pos++ ) { if ( source.charAt(pos) == '>' ) { break; } } } start = pos + 1; } // テキスト else { if ( source.charAt(pos) != '<' ) { for ( pos++; pos < source.length(); pos++ ) { if ( source.charAt(pos) == '<' ) { System.out.println(source.substring( start, pos )); break; } } } } processingTag = !processingTag; } } } class ExtractPlainTextWithClass { public static void main( String args[] ) { HTMLDocument doc = new HTMLDocument(); doc.source = "<html><head><title>タイトル</title></head><body><p>段落</p></body></html>"; doc.showPlainText(); } } と修正したところ解決できました。ありがとうございます。