• ベストアンサー

実行結果をSwingで表示

http://godwood.allnet.ne.jp/vioret/j2seobex.htmlでDLできるOBEXライブラリに付属しているコマンドベースでファイルを転送することができるサンプルプログラム(obex.java)の実行結果などをSwing上(JTextAreaなどに)で表示させたいと考えているのですが、そのような事は可能でしょうか?? ご教授お願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • kacchann
  • ベストアンサー率58% (347/594)
回答No.2

#2です。 >また「throw new OBEXCommandException("コマンドを指定してください。");」 >という風にSystem.out.println以外で表示させている箇所があった  throw new OBEXCommandException(); というのは 別にここで「表示(System.out.println)」しているわけではないのでは? 「表示」しているのは、この例外をキャッチするcatch節の中で、では? ソースコードを見直してみてください。 >exeファイルやbatファイルがないのですが バッチファイルは、自分でつくります。 http://www.cdwavmp3.com/bangai/batfile.html 中に書く「コマンド」は自由。 ちなみに、次のようなコマンド 「java obex get file.txt」 においては、コマンド先頭に書かれている"java"がexe。(java.exe) --- ところで前回の2つの方法に付け足して、方法3。 方法3. Runtime#exec()は使わないが、「標準出力のリダイレクト」は利用 (リダイレクトとは http://e-words.jp/w/E383AAE38380E382A4E383ACE382AFE38388.html Javaのリダイレクト http://www.vc-net.ne.jp/~ytp/bbs/java/bbs6698.html) --- 方法3の概要 (1)あらかじめSystem.out.println()の出力先を、指定のファイルに変更(リダイレクト)。 (2)自作アプリケーション内で、ツールobexの望みのAPIを直接に呼ぶ。(※よってexec()は不要) (3)この結果、ツールの実行結果は「ファイル」に保存。 (4)これをTextAreaに写す。

kyoko0224
質問者

お礼

本当に丁寧なご説明をありがとうございます。 とりあえず、全ての方法を試してみます! 本当にありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (1)

  • kacchann
  • ベストアンサー率58% (347/594)
回答No.1

ある「コマンドラインベースのツール」がある。 で、このツールを実行したときの「(標準出力への)出力」を 別の自作アプリケーションに取り込みたい。 どうすればよいか。 僕が思いつくのは2つ(経験が浅いので…)。 --- (1)~いちばん簡単な方法~ その「コマンドラインベースのツール」のソースコードを 持っているというのであれば、 そのソースコード内の 「標準出力へ出力」している箇所を 「TextAreaへの出力」に書き換える。 System.out.println(str) ↓ textArea.append(str+"\n"); など。 初級レベルであり悩みようがなく、正統な(?)やり方なのでオススメ。 (単に「ソースコードを、必要に応じて適切に書き換えなさい」ということ) --- (2)Runtime#exec() http://oshiete1.goo.ne.jp/kotaeru.php3?q=1047077 http://www.gimlay.org/~javafaq/S103.html わからない場合は(1)の方法で

参考URL:
http://oshiete1.goo.ne.jp/kotaeru.php3?q=1047077
kyoko0224
質問者

お礼

丁寧なご説明をありがとうございます。 (1)の方法は私も考えたのですが、プログラム自体がとても長く、また「throw new OBEXCommandException("コマンドを指定してください。");」という風にSystem.out.println以外で表示させている箇所があったため、うまく出来ませんでした。。。 (2)の方法は、exeファイルやbatファイルがないのですがそのような場合にはこの方法は活用できないのでしょうか? 質問ばかりで本当に申し訳ないです。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • java 実行コマンドについて

    java の実行コマンドについての質問です。java実行コマンドでは実行したいファイルを相対パスで指定できないのでしょうか? 具体的には、 現在、実行したいプログラムは ~/program/sample/Test.class となっています。 カレントディレクトリは~/programで、次のようなコマンドを行いました。 ~/program$ java sample/Test すると Exception in thread "main" java.lang.NoClassDefFoundError: sample/Test (wrongname: Test) という例外が出ました。 ~/program$ java -classpath sample Test を行えば実行できるのですが、java実行コマンドでは相対パスで実行ファイルを指定することはできないのでしょうか? (javacコマンドでは相対パスでコンパイルできる、つまりコンパイルしたいファイルが~/program/sample/Test.javaならば ~/program$ javac sample/Test.java でコンパイルできるので、これの類似でjavaコマンドでも相対パスで実行できるのではないかと考えたのですが。)

    • ベストアンサー
    • Java
  • 実行結果が1つしか出ない。

    いつも教えてくださり有難うございます。 Sample3 ↓ →JREシステム・ライブラリー src ↓ (デフォルト・パッケージ)   ↓ Sample3.java public static void main (String[] args) { System.out.println(1+1); System.out.println(1+1+2); } 実行結果が2は出るのですが 4が出ません。 どうしてでしょうか? ご回答のほど、宜しくお願い申し上げます。

    • ベストアンサー
    • Java
  • javaのswingコンポーネントについて質問です。

    javaのswingコンポーネントについて質問です。 javaをやり始めて2ヶ月ぐらいたちました。 今までアプレットとアプリケーションの両方をやりこちらはできたのですが 「swing」を使用したアプレット(JApplet)だけがアプレットビューアやhtmlで開いても実行できません。 わかるかたできれば教えていただければ幸いです。 追記 実行できないのはソースファイルにJAppletで組んだプログラムだけです。 本に記載されたソースプログラムやインターネットに上がっているソースプログラムを実行してみましたが これらもJAppletを使用したものだけができませんでした。

  • ボタンが表示されません

    //テキストパッドをつくっています。 //このプログラムはボタンが表示されませんなぜ? import java.awt.*; import javax.swing.*; class Test_Text extends JFrame{ public static void main(String args[]){ Sample_text st = new Sample_text(); JFrame jf = new JFrame("Test_Text"); JTextArea jt = new JTextArea(50,30); Container c = jf.getContentPane(); c.add(jt,BorderLayout.PAGE_START); jf.pack(); jf.setVisible(true); jf.setDefaultCloseOperation(EXIT_ON_CLOSE); } public void Sample_text(){ JButton j1,j2; j1 = new JButton("編集"); j2 = new JButton("保存"); setLayout(new FlowLayout()); this.add(j1); this.add(j2); } }

  • 実行できません

    Javaをインストールしたんですけど、コマンドプロンプトでjavacのコマンドを実行しても、'javac'は内部コマンド外部コマンド、操作可能なプログラムまたはバッジファイルとして認識されません。と表示されます。 ちなみに、Javaのバージョンは「j2sdk-1_4_2_11」です。環境変数の値のとこに「C:\j2sdk1.4.2_11\bin」と入力してます。 どこか間違ってるとこがあるのでしょうか?

  • java 外部プログラムの実行

    いつもお世話になっています。 タイトルのとおり外部プログラムの実行方法についてです。 現在プログラムAを実行するとプログラムBが実行されるプログラムを作成できないかと考えています。 少し調べてみたところ外部プロセスの実行がそれにあたるかと思うのですが、ネット上にあるサンプルプログラムを実行してみてもコンパイルこそできるものの実行がエラーになってしまいます。 以下のサイトを参考にしていますが、サンプルにある通りのメモ帳の実行は出来ますが,javaプログラムの実行はできない状態です。 http://syunpon.com/programing/java/sample/execute.shtml 私の考えているようなことはjavaで実装可能なのでしょうか? ご存知の方おられましたらご教授お願いします。

    • ベストアンサー
    • Java
  • Eclipseがコンパイル、および実行時に吐くコマンドについて

    Eclipseがコンパイル、および実行時に吐くコマンドについて JAVA初心者です。 JAVAのプログラムを作成した際、 $javac hoge.java $java hoge 等とすると思います。 ここで質問なのですが、 ###############  質問  ################# Eclipseで実行のボタンをおしてJAVAプログラムをコンパイル、実行した場合に、Eclipseが吐くコマンドを確認するためにはどのようにすればよろしいでしょうか? ###################################### というのも、http://okwave.jp/qa/q5928481.htmlで質問させていただいたことについて、Eclipseだとうまく実行できたので、Eclipseが吐くコマンドが確認できれば「自分の打ち込んだコマンドのどこが誤っていたのか」を知るヒントになると考えたからです。 どなたか方法をご教授頂けないでしょうか。よろしくお願いします。

    • ベストアンサー
    • Java
  • expatの実行について

    現在expatをインストールし、Windowsでサンプルプログラムをビルドし実行したのですがコマンドプロンプトが表示されてそこに何を入力したらいいのかがわかりません。 どなたかご教授ください。

    • ベストアンサー
    • XML
  • jarが実行できない

    JDKをインストールしていますが、jarファイルをダブルクリックしても Could not find the main class. Program will exit. と表示され実行できません。 コマンドプロンプトでは java -jar Sample.jar で実行できるのですが。 どうすればよいか教えてください。

  • Javaの実行できません、教えてください。

    Javaの実行できません、教えてください。 http://members2.jcom.home.ne.jp/take_1118/Applet39.html このページのサンプルプログラムを実行したいですが、どうしても Exception in thread "main" java.lang.NoSuchMethodError:main というエラーが出るため、実行できません。 どうすればできるんでしょうか?教えてください、お願いします。 サンプルプログラムではmainメソッドが含まれていないようですが、そうすれば実行できるんでしょうか?