- 1 名前:デフォルトの名無しさん mailto:sage [2008/04/05(土) 17:53:34 ]
- プログラミング言語Javaに関する質問スレです。
JavaScript, Ajaxの質問は、ここでは受け付けていません。 Web製作板をご利用ください。pc10.2ch.net/hp/ 過去ログ、関連スレッド、よくある質問とその回答など、 質問をする前に、貴方が見なければならないサイトについての情報は、 下のwikiのページにまとめてあります。 www.wikiroom.com/java/ これからJavaでプログラミングを始めたいが、何をすればいいかわからない人も、 wikiからのリンクをおたどりください。 よくある質問 ・「コマンドまたはファイル名が違います」 「'javac' は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。」 「Exception in thread "main" java.lang.NoClassDefFoundError: 」 www.wikiroom.com/java/?path,classpath ・String に == は使うな。equals() を使え。 ・「\12288 は不正な文字です。」 文字リテラル以外で全角スペースは使えません。半角スペースに。 ・その他の質問→「APIのjavadoc見ろ」 前スレッド 【初心者】Java質問・相談スレッド113【大歓迎】 pc11.2ch.net/test/read.cgi/tech/1204363011/ /* 既出の質問や、他に適切なスレが存在する質問は、容赦なく無視されます。 質問をする前にwikiで過去ログ、関連スレ、FAQをチェックしてください。 */ また、当スレで質問をするかたは、回答をもらえたときに、 wikiの更新をして頂ければ、忝のう存じます。 次スレは>>980あたりで。
- 488 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 00:25:31 ]
- System.outがfinalなのにセットできるのは昔の名残だ。
- 489 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 00:45:33 ]
- 古いAPIがListではなくVectorを返しやがるみたいなときに
使わざるを得ないことはあるな。
- 490 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 00:46:08 ]
- それはListで受けられるだろう。
引数がVectorだとListのままじゃ渡せないが。
- 491 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 02:30:08 ]
- FocusLostでフォーカスを失ったときに、
失う前に元々フォーカスがあったところを調べるのってどうすればいいんでしょうか?
- 492 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 02:35:03 ]
- 最近拾ったスクリーンセイバーがリモートネットワーク 72.5.124.55 ポート80に
アクセスしようとしていたのでセキュリティーソフトでアクセス禁止にしたのですが、 jabaの何か、としか私には解りませんでした、ここの人たちに聞けば親切に教えて くれるという事で尋ねてみました。 素人の私でも解る説明で教えてください。
- 493 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 02:39:28 ]
- void focusLost(FocusEvent e) {
Component lostFrom = e.getComponent(); Component gainedBy = e.getOppositeComponent(); } か?
- 494 名前:491 mailto:sage [2008/04/20(日) 04:43:55 ]
- 493さんありがとうございます!!なるほど!
これで、元々フォーカスのあったコンポーネント(jTextField)に入力されている値を取得したいのですが、 lostForm.getText(); だとエラーになるんですが、これじゃ駄目なんでしょうか?? 何度もすいません。ご教授お願いいたします。
- 495 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 11:55:14 ]
- >>494
if (lostFrom == myTextField) { String s = myTextField.getText(); } ==は同じオブジェクトを指してるかどうか型違っても==
- 496 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 11:56:37 ]
- 編集しかけで送信してしまった。
==は同じオブジェクトを指してるかどうかの判定だから、型違っても使える。
- 497 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 12:03:17 ]
- JTextFieldが複数あって、どれでも処理が同じ場合は
いちいち==で比較するより if (lostFrom instanceof JTextField) { JTextField tf = (JTextField)lostFrom; String s = tf.getText(); } のほうがいいだろうな
- 498 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 12:15:00 ]
- >>497
これはよくない気がする
- 499 名前:デフォルトの名無しさん [2008/04/20(日) 12:41:16 ]
- Javaのパッケージで定義されているクラスの中身って見れます??
例えば java.awt クラス Label のメソッドgetText()がどういう処理してるのかとか
- 500 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 12:43:58 ]
- ソースコード付いてるだろ
- 501 名前: [2008/04/20(日) 12:46:41 ]
- Eclipseとか使ってたらF3で一発だよ。
- 502 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 12:48:09 ]
- Java ディレクトリに入ってる src.zip の中を見れ
- 503 名前:デフォルトの名無しさん [2008/04/20(日) 13:04:18 ]
- あっ...ほんとだ
>>500-502 迅速な解答どもです じゃあ、iアプリの com.nttdocomo.ui クラス Label とか見れます? 探したけどdojaディレクトリの中探したけど見当たらん。。。
- 504 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 14:45:35 ]
- プロプラな部分のソースを付けるわけないだろ
- 505 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 14:46:35 ]
- MIDPならPhoneMEのソースが使えるがPhoneMEのMIDPは2.1だな。
- 506 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 15:30:18 ]
- Graphicsクラスで文字にアンチエイリアスをかけるにはどうすればいいのでしょうか?
Graphics2Dクラスじゃないとできないのでしょうか?
- 507 名前:デフォルトの名無しさん [2008/04/20(日) 15:41:36 ]
- Javaで2次元ベクトルを要素とする動的2次元配列
を作るにはどうしたらいいでしょうか? 配列はArrayListで作ってみたんですが、エラーが意味不明。。 あとdouble2つを持った2次元ベクトルクラスって標準ライブラリには無いんでしょうか?
- 508 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 16:08:21 ]
- java.awt.geom.Point2D.Doubleとか。
- 509 名前:デフォルトの名無しさん [2008/04/20(日) 17:15:25 ]
- >>504
やっぱ非公開か。ありがとう。
- 510 名前:491 mailto:sage [2008/04/20(日) 17:35:11 ]
- >>495-497
早速のご回答ありがとうございます if (lostFrom == myTextField) { String s = myTextField.getText(); } これって、元々テキストが入ってたテキストフィールドが「myTextField」ってことですよね?? だと、for文で全てのテキストフィールドを一致するか調べて探すっていう形になるんでしょうか?
- 511 名前:507 [2008/04/20(日) 18:01:18 ]
- >>508
ありがとうございます。求めてたのはそれです、、が java.awt.geom.Point2D.Double foo = new java.awt.geom.Point2D.Double(); はO.Kなんですが、 Point2D.Double foo = new Point2D.Double(); と書くとPoint2Dパッケージがないと言われるのですが、そういうものなのでしょうか?? あと、このクラスに限らず、ArrayListの2次元配列に入れたものを取り出すとき bar = data.get(1).get(2).x; 等とやると、java.lang.Object クラスに変数xなんてない、 と言われるのですが、どうしたらいいのでしょうか?
- 512 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 18:22:54 ]
- >>510
ずらずら書くのもループで回すのも構成次第でしょう。 >>511 冒頭に import java.awt.geom.Point2D.Double; と書けばよいのでは?
- 513 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 18:23:43 ]
- 漏れた。
JDK1.4までのArrayList#getの返値はObject型なのでキャストが必要。
- 514 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 18:50:11 ]
- ArrayList の現在の要素数を取得するにはどうすれば良いのでしょうか?
ArrayList.size で取得できるかと思ったのですが、以下のエラーが出てしまいます 「size は java.util.ArrayList で private アクセスされます。」
- 515 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 19:07:38 ]
- >>511
importも分からずにCollectionとは恐れ入った もう一回勉強した本を読み返すことをおすすめする
- 516 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 19:08:05 ]
- >>514
privateだからアクセスできません
- 517 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 19:12:56 ]
- >>514
メソッドとフィールドに関して勉強して来い
- 518 名前:514 mailto:sage [2008/04/20(日) 19:23:24 ]
- >>516-517
レスありがとうございます すいません、質問の仕方が変でしたね。 質問する時は最低限やったことを書くべきだと思ったので size が private でアクセスできないことを確認した旨を書きました。 聞きたかったことは ArrayList の現在の要素数を取得方法です 動的にサイズが変化するので要素数の取得をするべきではないのでしょうか?
- 519 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 19:33:05 ]
- 質問です。
あるJavasprictを改造中なのですが、フォルダの構成上、ファイルまでのパスをURL指定にしたいのですが、 以下の記述をどのように修正すればよいのでしょうか? downloadDir : '../ファイル名.php?img=フォルダ名/'
- 520 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 19:37:11 ]
- >>1
- 521 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 19:37:47 ]
- >>518
sizeメソッドを呼ぶ。
- 522 名前:514 mailto:sage [2008/04/20(日) 19:40:44 ]
- >>521
ありがとうございます!
- 523 名前:478 mailto:sage [2008/04/20(日) 21:26:36 ]
- 勉強になりました。ありがとうございます。
- 524 名前:510 mailto:sage [2008/04/20(日) 23:00:53 ]
- なるほど。ありがとうございました。
- 525 名前:デフォルトの名無しさん [2008/04/20(日) 23:49:12 ]
- javaのソースの中にたまに「class名#メソッド」
な記載があるのを見るのですが、これって何でしょうか。 staticだったら「class名.メソッド」だろうし staticじゃなかったら「インスタンス名.メソッド」かな と思っていますがそれ以外の何かがあるのでしょうか
- 526 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 23:51:57 ]
- >>525
インスタンスメソッドを示すときのお約束。 言語的にはそういう書き方はできない。
- 527 名前:デフォルトの名無しさん [2008/04/21(月) 00:00:20 ]
- >>526
ありがとうございます!!
- 528 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 00:06:00 ]
- jTextFieldを複数用意していて、
それを全てクリアしたいのですがどういう方法でやればいいのでしょうか? for (int i=1 ; i<=100 ; i++) { myTextField[i].setText(""); } のようにやればできるのですが、 テキストフィールドの変数名に配列を使わないでやるには一つづつsetTextしていくしかないんでしょうか? それだとあまりにも面倒なもので... もし良い案をご存じでしたらお願いします。
- 529 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 00:12:47 ]
- >>528
思いつかないこともないですが、もっと面倒くさいです。 たとえば、getComponents() メソッドで属するコンポーネントを全て獲得し、 forで一つ一つJTextFieldかどうかを確認し、JTextFieldならクリアする…という方法があると思います。
- 530 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 00:27:58 ]
- >>526
嘘をおしえるな。
- 531 名前:デフォルトの名無しさん [2008/04/21(月) 00:28:09 ]
- ユークリッドの互除法を用いて、
与えられた2つの整数の最大公約数を出力するJavaのプログラムを示せ。 java GCD 45 18 ←入力 9 ←出力 この問題どなたか分かりますか?
- 532 名前:デフォルトの名無しさん [2008/04/21(月) 00:40:15 ]
- >>492です、>>493〜>>529の皆さん、ありがとうございました。
おかげさまで、スクリーンセイバーの件は解決できました。 興味が出てきたのでジャバの勉強もしてみようと思います、 これからいろいろと質問とか疑問に思った事を相談に来ると思うので、 その時は宜しくお願いします。 ☆⌒(*^-゜)v Thanks!!
- 533 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 00:46:04 ]
- >>531
まず、ユークリッドの互除法でぐぐってみてはどうだろうか 一番上にWikipediaが来て、 1. 入力を m, n (m ≧ n) とする。 2. n = 0 なら、 m を出力してアルゴリズムを終了する。 3. n が m を割り切るなら、 n を出力してアルゴリズムを終了する。 4. m を n で割った余りを新たに m とし、更に m と n を取り替えて 3. に戻る。 こんな解説が載ってるわけだが
- 534 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 01:40:55 ]
- ループ文を break で抜けるように
メソッドを抜ける方法はありますか? public void hoge(int i) { if (i > 3){ System.out.println("nothing to do"); //ここでメソッド抜けたい } fuga(); }
- 535 名前: mailto:sage [2008/04/21(月) 01:42:05 ]
- return;
と書けばいいよ。
- 536 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 01:47:09 ]
- 返り値が void でも return が使えたんですね、知りませんでした。
ありがとうございます
- 537 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 12:41:56 ]
- javaの初めからあるクラスで、エクステンズしてもいいクラスと
いけないクラスの区別のつけ方と、 クラスのオーバーライドしてもいいメソッドの区別の仕方を おしえてください。 オーバーライドしてもいいメソッドやクラスは正常に動作するという意味です。
- 538 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 15:40:07 ]
- 自宅では問題ないいのだけれど、出先(友人宅や学校など)でJava Runtime Environment
が入ってないPCでJavaアプリを使いたいのですが、USBやリムーバブルHDでJRE環境を 持ち歩くにはどうすればイイでしょうか?持ち歩いている人なんていないのでしょうか?
- 539 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 19:35:32 ]
- >>537
アクセス制限に引っかかることがなく、かつ final ではない場合、クラスの継承およびメソッドのオーバーライドが可能。 意味が分からなければ、実際にやれば分かる。コンパイルエラーになるから。
- 540 名前:デフォルトの名無しさん [2008/04/21(月) 21:36:57 ]
- postlet.com/
このアプレットでは日本語ファイルの送信時に、文字化けが発生するので ソースのUploadThread.javaの265行目のfile.getName()をUTF−8にエンコードするようにしてリコンパイルしました。 (コンパイルは通り、アプレットは生成されました。) これをtomcat/struts環境で利用するとエラーが発生します。 オリジナルのアプレットは正常に動くのですが、リコンパイルしたものではエラーが発生する状況です。 この状態の回避方法を教えて下さい。 このアプレットで日本語ファイル名のファイルを文字化けなく送信したいです。
- 541 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 21:39:09 ]
- ログ読もうよ。TOMCAT_HOME/logs/stdout.log あたりになんか
吐き出されてるんじゃないの。
- 542 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 21:42:07 ]
- >>538
pc11.2ch.net/test/read.cgi/software/1196692396/l50 portableapps.com/node/1141 thingamablog.sourceforge.net/phpBB2/viewtopic.php?t=16 USB に JRE を積んで、それを叩くバッチファイルを作ればいい みたい。詳しくはリンク先で確認してちょ。
- 543 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 21:51:27 ]
- >>536
m9(^Д^)プギャー
- 544 名前:デフォルトの名無しさん [2008/04/21(月) 21:57:15 ]
- double x = 1010.101ってのを整数部と小数部に分けたいんだけど
整数部はMath.floor(x);でいいんだけど、 小数部はどうしたらいいのか分からないっす・・・ 小数部 = x - Math.floor(x)ってやると0.100999999999ってなっちゃうんです。
- 545 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 22:02:42 ]
- >>544
> ってやると0.100999999999ってなっちゃうんです。 doubleの数値を10進の文字列Stringに変換してから小数点で トリミングして切り出せばいい。
- 546 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 22:09:50 ]
- 今日からjavaやってみようと思う、コマンドの1つも知らない俺に優しいサイト&本ある?
ポケット辞書みたいなのあったらありがたいんだけど
- 547 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 22:18:03 ]
- >>546
java.sun.com/docs/books/tutorial/index.html >>544 整数部: x / 1.0 小数部: x % 1.0 文字列として正確に出力したいなら >>545
- 548 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 22:23:38 ]
- おー、調べるまで知らなかったけど、Javaにはfrac()ってないのか。
- 549 名前:デフォルトの名無しさん [2008/04/21(月) 22:34:28 ]
- >>545 String seisu = String.valueOf((int)整数);
String bin = String.valueOf(1010.101); String ss = "0." + sh.substring((int)seisu.length() + 1, (int)bin.length()); 小数部 = Double.parseDouble(ss); みたいにやったらできました。ありがとうございました。
- 550 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 22:39:36 ]
- APIみながらコード書いてたらファイアフォックスのタブがもの凄い数になるんだけど
プロのみなさんはAPIとか見ないの?
- 551 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 23:56:03 ]
- >>550
見るよ
- 552 名前:デフォルトの名無しさん [2008/04/22(火) 00:53:20 ]
- コンストラクターとは何の為に存在するのでしょうか?
- 553 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 00:57:32 ]
- インスタンス生成時に処理を行いたいから
- 554 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 02:57:31 ]
- >>551
いちいち見ながら書いてたら時間がすぐに経ちませんか? といっても覚えられるものでも無いでしょうけどw 俺が遅いだけだと思うけどコード書くのって時間かかるものなのかな
- 555 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 03:35:38 ]
- やってるうちに「この手のメソッドはこのへんのクラスにありそうだな……」で
引数の順序とかだけ確認する感じになる。慣れとセンスが大事。
- 556 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 14:39:57 ]
- intからshortに変換するにはどのようにしたらいいでしょうか?
int i = 5; short s; s = (short)i; ではeclipseに怒られてしまいます。
- 557 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 14:43:59 ]
- >>556
本当に?エラーメッセージは?
- 558 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 14:46:51 ]
- >>557
すみません。怒られませんでした。
- 559 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 18:17:40 ]
- JDK 1.6
Security.getAlgorithms("SecretKey") で得られる共通鍵ファクトリの名前が "ACTORY.DES" とかに なってて先頭の "F" が抜けてるような気がするんだけど、これは直せなくなったバグの類なのかね。
- 560 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 22:19:55 ]
- JEditorPane editor = new JEditorPane();
JScrollPane scroll = new JScrollPane(editor); JTabbedPane tabbed = new JTabbedPane(); tabbed.addTab("title",scroll); Container container = getContentPane(); container.add(scroll); と書いた後で、editorを取得するにはどうすればよいですか。 getSelectedComponent()あたりを使ったが、editor取得まで たどり着けません。
- 561 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 22:27:17 ]
- >>560
メンバフィールドで参照しとけば?
- 562 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 22:32:37 ]
- >>561
ありがとうございます。 確かにおっしゃる通りだと思いますが、 将来的にタブ数を増減できるようにするつもりで、 動的に扱えればと考えていました。
- 563 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 23:13:24 ]
- >>554
IDEがAPIドキュメントの必要な部分をポップアップしてくれる
- 564 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 23:38:01 ]
- テキストフィールド内に
文字が入力された場合とされなかった場合とで 処理の内容を変えたいのですが テキストフィールド内に文字が入力されているかどうかを 判定できる方法があれば教えてください。
- 565 名前:デフォルトの名無しさん [2008/04/23(水) 00:32:06 ]
- getText()
- 566 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 00:53:26 ]
- まあgetText()して正規表現?
- 567 名前:デフォルトの名無しさん [2008/04/23(水) 00:58:52 ]
- 可変長配列を使うと<identifierがありません>とエラーが出ます。なぜなんでしょうか?
class FallPane{ Vector<AbstractFallBall> balls; //エラー部分 public FallPane() { //コンストラクタ balls = new Vector<AbstractFallBall>(); //エラー部分 }
- 568 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 01:28:08 ]
- エラーがでますではなく、出力されたエラーメッセージをコピペ汁
- 569 名前:デフォルトの名無しさん [2008/04/23(水) 04:40:46 ]
- パッケージ名に「core」ってよく見るんだけど、どんなクラスを入れるの?
ビジネスロジックのあるクラス?なんか重要っぽいという事しかわかんね。
- 570 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 04:58:12 ]
- フレームワークのutilsじゃなくてcoreな部分
- 571 名前:567 [2008/04/23(水) 08:58:18 ]
- 567です。
エラーメッセージはこうです。 Fall.java:83: <identifier> がありません。 private Vector<AbstractFallBall> balls; ------------^(この矢印は山形カギ括弧を指しています。) Fall.java:89: '(' または '[' がありません。 balls = new Vector<AbstractFallBall>(); ----------------^ 公開されているサンプルプログラムをそのまま実行しても こうなります。 なぜなのかわかりません。 java環境のバージョンは1.4.2で pcはmacです。
- 572 名前:567 [2008/04/23(水) 09:01:28 ]
- >>571のエラー部分の矢印が、ずれてますが
2つとも、Vectorの次の山形カギ括弧を指しています。
- 573 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 09:28:51 ]
- >>571
公開してるサンプルプログラムは 1.5以上必要で、 君の jdk のバージョンが 1.4.2 だから、コンパイルできない。
- 574 名前:567 [2008/04/23(水) 10:09:12 ]
- VectorやArrayListなどの可変長配列は使えるんで、
オブジェクトの型を記述する<>の部分がjdk1.5じゃないとダメってことですね。 今のPCでは1.5にヴァージョンUPできないので、 その代わりとなるjdk1.4.2でも可能なコードってありますか? <>の部分をはずして使うと Fall.java:143: 互換性のない型 検出値 : java.lang.Object 期待値 : AbstractFallBall AbstractFallBall ball = balls.get(i); とエラーが出ます。
- 575 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 10:25:03 ]
- >>574
> AbstractFallBall ball = balls.get(i); AbstractFallBall ball = (AbstractFallBall)balls.get(i); みたいに、全部明示的にキャストするとか。
- 576 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 11:05:24 ]
- タイムゾーンの "Asia/Tokyo" みたいな 「地域/都市名」 表記って ISO かどっかで標準化されてんの? それとも Java 独自?
- 577 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 11:23:43 ]
- >>569
これだっ!っていうクラス
- 578 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 11:44:50 ]
- >>576
RFC2445、らしい。
- 579 名前:567 [2008/04/23(水) 15:11:58 ]
- 575さん、ありがとう。
解決しました。キャストすればよかったですね。
- 580 名前:デフォルトの名無しさん [2008/04/23(水) 15:16:58 ]
- キャストは明示的にやる癖つけた方がいいね
- 581 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 15:18:06 ]
- 他人が見ることを前提に作らなきゃな
- 582 名前:デフォルトの名無しさん [2008/04/23(水) 16:01:35 ]
- JavaMailでsetFlagsがサーバー側に保存されません。
(接続部分省略) Folder folder = store.getFolder("INBOX"); folder.open(Folder.READ_WRITE); //メッセージ数表示 System.out.println(folder.getMessageCount()); //適当なメッセージを取得 Message msg = folder.getMessage(2000); System.out.println(msg.getSubject()); //フラグを変更 Flags flag = new Flags(Flags.Flag.SEEN); msg.setFlags(flag, true); //フラグの立っているメッセージを取得 Message[] msgs = folder.search(new FlagTerm(new Flags(Flags.Flag.SEEN), true)); for(int i=0; i<msgs.length; i++) System.out.println(msgs[i].getSubject()); //再び総数と、未読数を取得 System.out.println(folder.getMessageCount()); System.out.println(folder.getUnreadMessageCount()); folder.close(false); store.close(); これで、実行すると未読数の数は減ります。 で、取得するメッセージを変えても、以前の物にフラグが立っていない状態です。
- 583 名前:582 [2008/04/23(水) 16:05:37 ]
- DELETEのフラグをたてて
folder.close(true); にすると削除されます。 やりたいことは、メールを削除しないで、処理していないメールのみを受信することです。 プロトコルはPOP3です。 削除フラグだけたててfalseのままcloseも試したけどリセットされてる感じです。 サーバーから削除しないで、新しいメールのみと受信はどうすればいいのでしょうか? お願いいたします。
- 584 名前:582 [2008/04/23(水) 17:48:08 ]
- もしかしてPOP3では不可能で
ttp://www.mew.org/~kazu/sut/2002-1st/12.html ここにあるように一回前の受信のUIDをサーバーと見比べて受信するのでしょうか? 上のサイトにはリストを保持、ってあるけど、最後のUIDだけあればいけそうですね。 微妙にJAVAの話題じゃなくなってきたけど・・・ 「メールをサーバ側に残す」 はこんな感じで実現してるんでしょうか?
- 585 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 18:44:49 ]
- 質問です!!!!
try{ System.out.println("文字を入力してください"); BufferedReader br = new BufferedReader( new InputStreamReader( System.in ) ); String str = br.readLine(); System.out.println(str+"をファイルに出力します"); FileWriter fw = new FileWriter( "test.txt" ); fw.write( str, 0, str.length() ); fw.close(); } catch( IOException e ){ System.out.println(e); } これで実行して文字を打ち込んでもファイルに出力されないんですがどこがおかしいですか?
- 586 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 18:56:53 ]
- >>585です
ちゃんと出力されてました すいませんもう二度と書き込みませんのでどうか許してください
- 587 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 19:10:03 ]
- >>578
サンキュー 該当の RFC、ナナメ読みしただけではどこが該当してるんか分からんかったが 参考文献に定義ソースと思しきデータの場所見つけたので張っとくわ。 ftp://elsie.nci.nih.gov/pub/tzdata2008b.tar.gz
- 588 名前:デフォルトの名無しさん [2008/04/23(水) 21:04:20 ]
- Javaアプリケーション上から別のDOSで動くアプリケーションを呼び出したいのですが
どうすればよいのでしょうか? Robotクラスでも何とかできるのですが、DOSアプリなので表示の必要は無く、 見た目上はJavaアプリケーションしか走ってない状態がいいのですが、方法がわかりません・・・。 よろしくお願いします。
|

|