【初心者】Java質問・相談スレ6【大歓迎】

このエントリーをはてなブックマークに追加
1デフォルトの名無しさん
JAVA初心者の方はこちらのスレで質問をしましょう。そして誰か教えてあげてください。

なお、ソースを貼るときには、半角空白が消える仕様のため、タブ1つを全角空白2つに
置換してから投稿しましょう。わからないときはどこがどうわからないのか?、動かな
いときはどこがどう動かないのか?なぜそう判断したのか、エラーメッセージや結果な
どと一緒にお書き下さい。雑誌や宿題などの疑問を質問するときは出展を明記したほう
が解決が早いです。

関連情報は >>2-10 あたりにあります。 (一部 dat落ちやHTML化待ち)


JavaScriptの質問はWeb製作板へどうぞ。
web制作管理
http://pc.2ch.net/hp/

パソコンの基本操作に関しては、PC初心者板や、各OS板などで質問しましょう。
パソコン初心者@2ch掲示板
http://pc.2ch.net/pcqa/

上級者の方で教える技術が無い方は下記スレでダベりましょう。
初心者無視! Java相談室 その9
http://pc3.2ch.net/test/read.cgi/tech/1021555964/


基本的にsage進行でおねがいします。また煽り厨は放置でお願いします。
http://pc.2ch.net/tech/kako/1026/10266/1026601774.html
2デフォルトの名無しさん:02/09/07 20:26
はろーが表示できません。
やりかたをおしえてください。
3デフォルトの名無しさん:02/09/07 20:28
過去スレ

【初心者・ネタ】Java質問・相談スレ【大歓迎】
http://pc.2ch.net/tech/kako/1021/10218/1021817147.html
【初心者】Java質問・相談スレ2【大歓迎】
http://pc.2ch.net/tech/kako/1023/10233/1023319551.html
【初心者】Java質問・相談スレ3【大歓迎】
http://pc.2ch.net/tech/kako/1024/10248/1024885660.html
【初心者】Java質問・相談スレ4【大歓迎】
http://pc3.2ch.net/test/read.cgi/tech/1026601774/
【初心者】Java質問・相談スレ5【大歓迎】
http://pc3.2ch.net/test/read.cgi/tech/1028096225/
【初心者】Java質問・相談スレ6【大歓迎】
http://pc3.2ch.net/test/read.cgi/tech/1029774594/
4860:02/09/07 20:28
>>2
やだ
5860:02/09/07 20:28
はろー
また6?
7デフォルトの名無しさん:02/09/07 20:31
Java 2 プラットフォーム API 仕様
http://java.sun.com/j2se/1.3/ja/docs/ja/api/index.html

Javaについてのよくある質問と回答集。
Java House ML Topics
http://java-house.etl.go.jp/ml/topics/

Java言語規定 目次
http://www.y-adagio.com/public/standards/tr_javalang/index.htm

Java(TM) 2 SDK ドキュメント
http://java.sun.com/j2se/1.3/ja/docs/ja/index.html

Java 2 プラットフォーム API 仕様
http://java.sun.com/j2se/1.3/ja/docs/ja/api/index.html

Java(TM) 2 SDK ドキュメント
http://java.sun.com/j2se/1.3/ja/docs/ja/index.html

Java言語規定
http://www.y-adagio.com/public/standards/tr_javalang/index.htm
http://java.sun.com/docs/books/jls/second_edition/html/j.title.doc.html

「僕以外の人も、同じ疑問を持ったはず」と思えるような質問があります。
http://java-house.etl.go.jp/ml/topics/
http://www.gimlay.org/~javafaq/
http://www.javaworld.com/columns/jw-tips-index.shtml

サルにはわかるヒアリングJava入門(マルチランゲージ対応)
http://www.asahi-net.or.jp/~rc4t-ishr/Saru/index.html
8860:02/09/07 20:32
>>6
「はろー」が表示できないので、解決するまで6でお願いします。
9860:02/09/07 20:33
転職板ではろーわーくが表示できました!
10デフォルトの名無しさん:02/09/07 20:34
っていうか,また6かよ!

(´-`).。oO(テンプレはあらかじめ作っておいた方がイイなぁ…
)
12デフォルトの名無しさん:02/09/07 20:39
6とかいて7とよませよう。
っていうか,7で新スレ立ててこっちは削除すっか.
14デフォルトの名無しさん:02/09/07 21:58
>>860
すげー笑わせていただきました。ありがとう。
>>12
それに一票。
16デフォルトの名無しさん:02/09/07 23:50
860は?
17860:02/09/08 01:17
>>8
System.out.println("はろー");
18860:02/09/08 01:41
帰ってきました。ちょっと酔ってます。
前スレは俺のせいで糞スレになってしまってごめんなさい。
おもしろいかと思ったんですが、読み返して見ると微妙ですね。
ではほんとにさようなら・・・
>>18
中央線で飛び込みですか、ご苦労様です。
まぁJavaスレの情緒レベルがわかっておもしろかったよ、個人的に。
もう来ないでいいけど。
2120:02/09/08 01:46
おっと>>18へのレスね
Swingについて質問があるんですが・・・
JMenuBarにセットしたJMenuItemに「Ctrl-C」というようなショートカットキー
を登録させたいのですがどうすればいいんでしょうか?
ちなみに「ファイル(F)」のような「Alt-F」はできます。


JMenuItem#setAccelerator(KeyStroke)かな。
2422:02/09/08 02:03
もう一つ質問していいですか?
以下の内容でこれだけは覚えておかないと馬鹿にされるのはどれでしょうか?

1.スレッド
2.ネットワーク
3.JavaBeans
4.国際化
5.リフレクション
6.アプレット
7.RMI
8.JSP・サーブレット
9.XML
10.Swing
11.File.IO
12.Graphics2D,3D

25デフォルトの名無しさん:02/09/08 02:04
国際化
2622:02/09/08 02:04
>23
ありがとうございます。早速試してみます
構造化BASIC = Java
>>24
13.HelloWorld
>>27
その程度の認識しかできない理解の仕方してるんだろうね、可哀想に。
いや、動作環境にOSが必要と言う意味ではBASIC以下であろう。
ちぇ、6のままか。
お願いですから860はもうこないで下さい
Java Appletでflash クローンみたいなの
作ろう と思っています
すでに ありますか?
絵本 を 作れる てのは あったのですが
しかし、Javaをちゃちなおもちゃだと思いたがってる奴って、
どんな仕事してるのよ…

VMの上で動くのも、OSの上で動くのも似たようなもんジャン。
35 :02/09/08 06:47
コマンドプロソプトで
C:\WINDOWS>
という部分を
C:>
に変えたいのですがどうしたらよいですか?
promptコマンドを駆使しろ
37 :02/09/08 07:36
>>36
初心者なので意味不明です。
cmd.exe のコマンド プロンプトを変更します。

PROMPT [文字列]

文字列 新しいコマンド プロンプトを指定します。

PROMPT には通常の文字と次に示す特殊コードを使用できます:

$A & (アンパサンド)
$B | (パイプ)
$C ( (左かっこ)
$D 現在の日付
$E エスケープ コード (ASCII コードの 27)
$F ) (右かっこ)
$G > (不等号 (より大))
$H バックスペース (直前の文字を削除します)
$L < (不等号 (より小))
$N 現在のドライブ
$P 現在のドライブとパス
$Q = (等号)
$S (空白)
$T 現在の時刻
$V Windows XP のバージョン番号
$_ キャリッジ リターンとラインフィード
$$ $ (ドル記号)

コマンド拡張機能を有効にすると、PROMPT コマンドは、次の追加の書式
文字をサポートするようになります:
コマンド拡張機能を有効にすると、PROMPT コマンドは、次の追加の書式
文字をサポートするようになります:

$+ PUSHD ディレクトリ スタックの深さに応じて、0 個以上のプラス
記号 (+) を指定します。1 個のプラス記号が、プッシュされた
1 レベルを表します。

$M 現在のドライブ文字に関連付けられているリモート名を表示します。
現在のドライブがネットワーク ドライブでない場合は、空の文字列
を表示します。
40 :02/09/08 07:57
    ・・・・e?
41デフォルトの名無しさん:02/09/08 08:42
>>1
20時なんかに立てるから潰されるんだよ。

>>1
> 関連情報は >>2-10 あたりにあります。

関連情報がほとんどないじゃん。

43デフォルトの名無しさん:02/09/08 11:09
int型の変数をString型の変数に変えるにはどうしたらいいんですか?
>>43
int i = 123;

""+i
45デフォルトの名無しさん:02/09/08 11:17
>>44
ありがとうございます
>>43
class Intstring {
  public static void main(String[] args){

  int i = 1;
  String s = "" + i;

  System.out.println(s);

  }
}
>>46
Integer.toString(i)は邪道ですか?
String.valueOf(i) というのもあるな。
"" + i の方がタイプ量が少ないからこっち使っちゃうけど。
>>47
いいんじゃない。
50デフォルトの名無しさん:02/09/08 13:15
javaで自分がいるパス(usr/local/...)を表示させたいのですが、うまく行きません。
下記のプログラムを書いてみたのですがエラーが出ます。
もしやり方を知っている方がいましたら教えてください。

import java.io.*;

public class test {
public void main(String args[]){
test test = new test();
File file = new File(test);
String x =file.getPath();
System.out.println(x);
}
}
51デフォルトの名無しさん:02/09/08 13:18
>>35
面白そうだからレスするけど
フォルダとかディレクトリとかご存知?
System.getProperty("user.dir")
プロパティ一覧

System.getProperties().list( System.out );
54 :02/09/08 14:00
>>51
知りません。
フォルダってファイル入れておく場所じゃないんですか?
>>54
違う
56デフォルトの名無しさん:02/09/08 14:45
5750:02/09/08 15:12
>>52 >>53
ありがとうございます
無事できました

>>35
cd ..
DOSコマンドとUNIXコマンドは本を買うかわかりやすいHPを
ブックマークしておくかしないと意外とてこずるよ
58デフォルトの名無しさん:02/09/08 15:35
ロータスのBeanMachine1.1てのを持ってるんですが
当時はとても遅くて使う気にならなかったのですが
新しいバージョンとか出てるのでしょうか?
59デフォルトの名無しさん :02/09/08 16:55
javaとjavaアプレットの区別が付かない厨房です。
スミマセン教えてください。
60デフォルトの名無しさん:02/09/08 17:02
>>59ですが、ゲーム制作にイイ言語は今のところ何なのでしょうか?
ホントに教えて君&厨房でスマソm(_ _)m
Java は Java。

Java でのアプリの作り方と言うか、作りそのものの種類にいくつかあって、
・Java アプリケーション
・Java アプレット
・Java サーブレット
とかあるの。

開発言語は当然全部 Java。
6261:02/09/08 17:05
>>60
書かなきゃ良かった
>>61-62
ようやく理解できますたありがd。でもってホントに厨房でスマソ。
staticな変数やメソッドを持つクラスってどうして
インスタンスが作れないのですか?
インスタンス自体がstaticな存在だからですか?
65U ◆tFsGiu0c :02/09/08 18:46
>>64
作れるよ? 何か勘違いしてない?
public class TestClass {
    public static void testFunc() {
        System.out.println(TestClass.TEST_STRING);
    }

    public static String TEST_STRING = "omaemona-";

    public static void main(String[] args) {
        TestClass t = new TestClass();

        t.testFunc();
    }
}

もちろん可能。
>>59
ファミリーベーシック
68デフォルトの名無しさん:02/09/08 19:48
JavaでIFFファイルを読み込むためのライブラリって何処かに無いでしょうか?
69 ◆k/Ubp.Kg :02/09/08 19:51
70デフォルトの名無しさん:02/09/08 19:59
プラグインの追加を柔軟に行えるアプリケーションを作ろうと思っているんですけど、
参考になるサイトはありますか?
7168:02/09/08 20:49
>69
ごめんなさい。せっかくレスつけて頂いたのですが英語が読めません。
どこか日本語で解説されてる場所はないでしょうか?
>>71
んじゃ、javaもやめたほうがいい。
>>72
お前はどれくらい読めるの?
7469 ◆k/Ubp.Kg :02/09/08 21:29
>>71
甘えんな、ヴォケが。…と言いたいところだな。
JavaでIFF使おうと思ったら、自分で書くかこれ使うしかないっぽい。Javaが主にサーバサイドで使われてるせいか、
日本じゃ使ってる人はあんまりいないみたいだね。だから日本語の資料はまったく(と言っていいほど)ない。
俺も結構探してみたけど見付けれなかった。

どうせ仕事か学校のレポートで使うんだろう?だったら英語勉強して誰も触ってないこのAPIの勉強をしてみようとは
思わんか?それができないならC++でも使ったほうがいい。IFFを扱うライブラリもあったように思う。

Javaで、に拘るなら日本語に拘るな。ただIFFさえ読めればいいっていうならJavaに拘るな。新しいコトを勉強するって
いうことはそんなに生優しい道じゃないぞ。
>>74
>自分で書くかこれ使うしかないっぽい。
説明して下さい。
7669 ◆k/Ubp.Kg :02/09/08 21:42
>>75
もうね、(略。
自分でスクラッチで書くか、>>69のリンク先にあるAPIを使うか、だ。
スクラッチで書くんならIFFのフォーマットぐらい自分で調べろ。javax.imageioあたり使えばイイはず。
>>76
ああ、同意。

HTTP使いたいんですがどうすれば良いんですか?
便利なコンポーネントはありますか?出来るだけ簡単で日本語、フリーのものが良いです。

とか言われるとどつき倒したくなるわ。
7869 ◆k/Ubp.Kg :02/09/08 21:51
>>77
漏れはてっきり>>68かと…別人だったのね(笑)

勉強はしたいけど努力はしたくないって奴が多すぎだなぁ…。
俺も学生だけど、うちの回りの人間は自己を向上することに対してもっと貪欲なんだけど。
>>78
うちの学校にはあんまいない気がするなぁ。

少なくとも俺は、こんなところで問題解決しようとは思わない。
まともな答え出ることまれだし。はっきり言って迷惑だろうし。

2ch見る−>おもしろそうな技術の話してる−>わからない−>検索−>おもしろい−>本でも読む

って感じだな。
きっかけを得るためだけに使ってるんだよな。結局。

やる気がある奴は良い参考書とか聞きまくるより適当に自分で良さげな本買ってきて勉強し始めてるだろうと。
そのレベルでここに来る人のやる気を疑問に思うことが良くある。
80 ◆k/Ubp.Kg :02/09/08 22:02
>>79
あー、俺もそんな使い方してる気がするな。確かに2chで聞いてみようって発想は出てこない…。
ま、そういうコトでJIU APIのドキュメントでも読んでみよう。
>>73
それを聞いてどうするの?
>>81
ぺらぺらと自分の実力をまくし立てないところを見ると自信ないんだな。
>>81
教えてもらうつもりなんだろうよ。悪びれもしないだろうね。
天然馬鹿は御しがたし。
8481:02/09/08 22:20
>>82
なぜ私がまくしたてるんだろうか?

>>73
人のことなんてどうでもいいでしょ?自分で自分が欲しい資料を読まなきゃ意味がない。
それができないならjavaもやめたほうがいい。

話はそれだけだ。
>>85
自分は人に説教するほどの実力者ではないと自覚しているわけか。
じゃあなんでそんなことするのさ?
>>86
( ´_ゝ`)プッ
不毛な話をしたい人はこのスレにどうぞ。
http://pc3.2ch.net/test/read.cgi/tech/1031028125/
89デフォルトの名無しさん:02/09/08 23:38
Write once , debug anywhere
なんて悪口があるけど、実際のところ、
どの程度環境に振られるのかな?
Windowsに最初から入ってるVMって
ずいぶんバージョンの古い仕様みたいだけど。
>>86
> じゃあなんでそんなことするのさ?

どんなこと?

>>89
デバッグ用にJDK入れた時点でお望みのバージョンになると思われます。
9272:02/09/08 23:41
>>68 = >>71 = >>73 = >>82 = >>86
漏れは72以降出てないぞ。
このスレに自分ともう1人しかいないと思っていないか?

>>91
JDKを入れた途端に、動かなくなるゲームサイトがあるけどね。
>>86
氏ね
>>93
激しく同意。迷惑っす。
96>>82==>>86:02/09/08 23:43
>>92
オマエモナー
9789:02/09/08 23:50
>>93
なるほど、そういうこともあるんだね。今ちょっと
Oracle9iに入ってるjavaのバージョンみてみたら、
JDK-1.2.2_007と出た。これも結構古いね。
クライアントサイドで動くプログラム作るときは、
動作確認はいろいろな環境でキチンとやらないと
駄目みたいだね。でないと、93が紹介してくれた
糞サイトみたいなものを作ってしまう羽目になる。
今からJavaでクライアントサイドアプリ作るなら、よほど小さいもの以外は
アプレットでなくてJavaWebStartにしようよ。1.4使えるし
JWS+SWTって可能?
>>98
あれって個人でも使えるの?
具体的には、プロバイダのおまけみたいなサーバにデータを
アップロードするだけでJavaWebStart対応できるの?
以前ドキュメントを読んでみた限りでは、自分で多少
鯖設定変えないとダメだったように感じた事は覚えてるんだけど、詳細は覚えてない。
>>99
JNIで使用するライブラリを配布バイナリに同梱すれば、いけるかも。
>>100
JWSってそんなアホな設計してるのか?普及しないじゃないか(ワラ
HTTPの上でやってるんじゃないの?
100>>101
ドキュメントをもういちど読んでみますた。
http://java.sun.com/products/javawebstart/docs/developersguide.html

MIMEの追加しないとダメっぽい。
application/x-java-jnlp-file JNLP

結論 : MIMEの設定が出来る鯖ならJavaWebStart使える。
そいや、appletだと適切な設定すればJRE入ってなくても
flashみたいに勝手にpluginとJRE拾ってきてくれるみたいだけど、
JWSもそうなの?
>>100
Javaアプレットだって鯖設定変えないとダメだったように感じるが?
>>103
JWSがインスコされている必要があるでつ。
106デフォルトの名無しさん:02/09/09 09:46
JXTAに興味あるのですが、JXTAを使ったアプリケーションって
すでにありますか?
JXTAネタ、知ってることがあったら教えてください。
JAVA初心者なんですが、質問よろしいですか?
URLクラスを使って簡易ブラウザを作ったんですけど、
普通のサイトは見れるのにGoogleに接続した瞬間に
Unknown Sourceのエラーがたくさんでます。
これってどうゆうことですかね?

108 :02/09/09 10:04
DOSプロンプトで
C:\WINDOWS> をC:>に換えたいのですよ!
単刀直入におながいします!
109cd \:02/09/09 10:11
110prompt $n:$g:02/09/09 10:15
 
>>108
無理
>>106
すでにあるよ。
113デフォルトの名無しさん:02/09/09 11:05
サーブレットでBufferedOutputStream,BufferedInputStreamを使用して、
ブラウザからファイルのダウンロード処理を作成しているのですが・・・
ファイルの保存ダイアログボックスでキャンセルを押すと、IOExceptionエラーになってしまいます
どなたか、お助け下さい。
よろしくお願い致します
114デフォルトの名無しさん:02/09/09 11:44
>>113
IOExceptionエラーに発生した該当ソースの行とスタックトレースでてないのか?
115デフォルトの名無しさん:02/09/09 12:15
>>114
ご返答ありがとうございます。
ソースは以下のとおりです。
スタックトレース?すみません。勉強不足なもので・・・調べてみます
BufferedOutputStream out_buf = new BufferedOutputStream(response.getOutputStream());
try {
BufferedInputStream in_buf = new BufferedInputStream(new FileInputStream(FILE_PATH));
int c;
while ((c = in_buf.read()) != -1) {
out_buf.write(c); ←ここでエラー
}
in_buf.close();
} catch (Exception e) {
}
out_buf.flush();
out_buf.close();
116デフォルトの名無しさん:02/09/09 12:16
>>107
Refererが必要とか。
Apiドキュメント
BufferedOutputStream クラスのスーパークラス
OutputStreamクラスのwriteメソッド
例外:
IOException - 入出力エラーが発生した場合。特に、出力ストリームが閉じられている場合に IOException がスローされることがある
118107:02/09/09 12:23
わかりません・・・。
Googleの検索文をURLに入れてアクセスすると
ノットファウンドがでるんですけど。
何ででしょう?
119113:02/09/09 12:39
>>117
まさしく、この状態です
保存ダイアログでキャンセルされてしまうと、出力ストリームが閉じてしまうのかな
これを回避する方法って何のでしょうか?
120 ◆k/Ubp.Kg :02/09/09 12:49
>>118
意味分からん。

>>119
正しい解決法かどうか分からんが、例外キャッチして後処理する方がイイんでないか?
本来ダウンロードできるはずのファイルを途中でブチ切ったんだから、尻切れになってるファイルは
消した方がいいし、「切るなや、ゴルァ!」って伝えたいコトもあるだろ。
>>118
出来るだけ小さくしたソースを出してごらん。
URLが間違っている罠
123107:02/09/09 12:53
CGIのあるページだからかも・・・。
>>123
CGIだろうがHTMLだろうがブラウザから見れば一緒だと思われ。
チャンクとか知ってる?>>124
まあこの場合はHttpConnectionが隠蔽してくれるはずだから関係ないと思うけど。
>>124
ブラウザから見るんじゃないだろ?
なんで誰もtelnetで80番ポート叩いてみろよ,って言わないの?
>>127
もう107は無視していいだろ。>>121あたりに答えないし
129デフォルトの名無しさん:02/09/09 16:53
クラスを実行して、その結果を配列に入れたいんですが、
実行するまで返ってくるものの大きさはわからない場合、配列の生成はどのようにするのが
スマートなんでしょうか。

現在は、int result = new int[65535]; みたいに、
無駄に大きなモノを用意して、収まっても余分にメモリ使うし溢れたら知りません状態なのですが・・・。
130初心者A:02/09/09 16:59
Vector・・・かなぁ
>129
ベクター使えよ、あとそれと
int result = new int[65535]; じゃなく
int[] result = new int[65535]; だろ
132129:02/09/09 17:16
ありがとう、可変長にできたんですね。リファレンス探ってみます。
>>129 Vectorってのは、
Object[]の可変長バージョンにあたるから、
「new Integer(..)」って包めば一応使えるけど、
int[]と比べるとかなり無駄が多いな。

可変長の配列程度なら、自作してもいいと思う。
「元の配列があふれたら、倍のサイズの配列に内容を写して切り替える」
を繰り返せばいいだけだから。
JtextFieldを整数専用にしたいのですができますか?
いちいちparseIntは面倒で・・・
135デフォルトの名無しさん:02/09/09 18:14
tomcat3ではsystem.outが出力されていたのに、tomcat4に変更したら、出力されなくなってしまいました。
どこか設定が違ってるのかな?
136Java servlet勉強中:02/09/09 18:16
質問よいでしょうか?

jspから入力した、String型の日付をサーブレットでDate型にしたいのですが…

BIRTHDAY はString型です。

Date ddt = DateFormat.parse(BIRTHDAY);
 ↑のように書いたところ、

エラー #: 308 : static でない method parse(java.lang.String) は static context から参照できません 行 85, 列 26
 ↑のようなエラーが出てしまいました…


使用するメソッドが間違っているのでしょうか?
どなたか、教えてくださいm(__)m
137マルチポスト晒し:02/09/09 18:21
http://pc3.2ch.net/test/read.cgi/tech/1030606700/l50
765 :Java servlet勉強中 :02/09/09 18:06
jspから入力した、String型の日付をサーブレットでDate型にしたいのですが…

BIRTHDAY はString型です。

Date ddt = DateFormat.parse(BIRTHDAY);
 ↑のように書いたところ、

エラー #: 308 : static でない method parse(java.lang.String) は static context から参照できません 行 85, 列 26
 ↑のようなエラーが出てしまいました…


使用するメソッドが間違っているのでしょうか?
どなたか、教えてくださいm(__)m
>>137
全文引用するなよ。ウザ
String s = "2002年10月8日";
DateFormat df = new SimpleDateFormat("yyyy年M月d日");
Date d = df.parse(s);
java.util.logging.Logger.getAnonymousLogger().info(d.toString());
Logger.getAnonymousLogger().info(new SimpleDateFormat("yyyy/MM/dd").format(new SimpleDateFormat("yyyy年M月d日").parse("2002年10月8日")));
>>134
いちいちInteger#parseInt()するべき.
もしくはユーザがキー打つ度に数字以外のキーを打っていないかチェックするか….
# それでもString->intに変換するときにどの道parseInt使うし,実装する手間がある.
142デフォルトの名無しさん:02/09/09 19:56
JAVAで動画像処理するのにmpegを利用したいのですが、書籍などは静止画像処理はあれど動画像処理で参考になるものが見つかりませんでした。
もし参考になる書籍やHPがありましたら助言をお願いします。
143 ◆k/Ubp.Kg :02/09/09 20:11
>>142
Javaでマルチメディアって言ったらコレでしょ, 調べたらすぐ出てくると思うけど…?
mpegも扱えたはず. 試しにプレーヤ作った覚えあるから. ピアソンから本出てるから金に余裕あるなら買うよろし.
http://java.sun.com/products/java-media/jmf/
>>135
Java House ML の、以下の記事から始まるスレッドが参考になりませんか?
http://java-house.jp/ml/archive/j-h-b/051025.html#body
前スレで同じ事を書いた気がする。
145デフォルトの名無しさん:02/09/09 20:39
>>143
ありがとうございます!!さっそく目を通してみます
146デフォルトの名無しさん:02/09/09 21:04
Javaでjpegを読み込むのってどうやったら良いのですか?
147 ◆k/Ubp.Kg :02/09/09 21:05
>>146
javax.imageio.*
148デフォルトの名無しさん:02/09/09 21:08
レスありがとうございます.
具体的にどのようなメソッドを利用したらよいのでしょうか?
初心者過ぎてすいません.
149 ◆k/Ubp.Kg :02/09/09 21:24
おっと初心者か…。ちょっとココで説明するのは面倒なんで(一応、不特定多数の人間が書き込む掲示版だし)、
このURLで勘弁してくれぃ。
 http://www.take-f.net/pub/java/t_java.html

javax.imageio.*がデフォルトで付いてくるようになったのはJ2SDK 1.4.0からだから、もしそれ以前の
バージョンを使ってるようならバージョンあげるよろし。
必要そうなAPIドキュメントは↓。自分のマシンにDLしてるならそれの中にも入ってるハズ。
 http://java.sun.com/j2se/1.4/ja/docs/ja/api/javax/imageio/package-summary.html
 http://java.sun.com/j2se/1.4/ja/docs/ja/api/javax/imageio/plugins/jpeg/package-summary.html

# あと一行レスが返ってきたらGoogleで調べてみれ。
# 今回ならJava,JPEG,javax.imageioとかで。
150KZ ◆aw7Fl2kI :02/09/09 21:26
>>143
JMF 使えば、カメラから取り込んで、1フレームずつ切り出して加工だってできる
151デフォルトの名無しさん:02/09/09 21:27
ありがとうございます.
参考にしてみます.
152ふれあいケツ毛工房。:02/09/09 21:34
//ピースイメージ生成
//--------------------
for (i=24;i>=0;i--) {
image[i]=Image.createImage(20,20);
image[i].getGraphics().drawImage(imgPic,
-20*(i%5),-20*(i/5),
Graphics.LEFT|Graphics.TOP);
}

初心者でも分かるように教えてください。
答えてくれた方に1000円あげます。
153ふれあいケツ毛工房。:02/09/09 21:37
//ピースデータ
//--------------------
for (i=24;i>=0;i--) data[i]=i;
int[] dir={UP,DOWN,LEFT,RIGHT};
for (i=99;i>=0;i--) {
controlPanel(dir[(rand.nextInt()>>>1)%4]);
}

これもお願いします。
154 ◆k/Ubp.Kg :02/09/09 21:38
あ、それ初心者無視のJavaスレにあった奴じゃん。誰も答えなかったんだよね(藁
155ふれあいケツ毛工房。:02/09/09 21:38
//イメージ
//--------------------
for (i=24;i>=0;i--) {
if (data[i]!=24) {
graOff.drawImage(image[data[i]],
(getWidth() -100)/2+20*(i%5),
(getHeight()-100)/2+20*(i/5),
g.LEFT|g.TOP);
}

ついでにこれも。
じゃばだー
何がどう分からないのか、熟練者でも分かるように教えてください。
分かるように教えてくれた方に1000円あげます。

>答えてくれた方に1000円あげます。
答えただけなら漏れも1000円貰える計算になるわけだが…。
158デフォルトの名無しさん:02/09/10 05:25
インスタンスを入れる変数に配列を使うことはできるんですか?
>>158
インスタンスに配列使えるよ。ってかやってみろよ。
160デフォルトの名無しさん:02/09/10 06:11
Color col[];
col=new Color[99];
for (int a1=1;a1<100;a1++) {
Color col[a1][a2]=new Color(0,0,a1);
}
こうやったのですが無理でした
161デフォルトの名無しさん:02/09/10 07:10
ここのストリーム動画って落とせますか?
http://svc.ana.co.jp/travelnavi/beijing/mv/index.html
>>160
そもそも初歩的に間違っているのでは?
163デフォルトの名無しさん:02/09/10 07:48
>>162
それは分かってますが、調べても見つからなかったんです。
どこをどうしたらいいか教えてもらえませんか?
>>160
> col=new Color[99];
> for (int a1=1;a1<100;a1++) {
問1:「new Color[99]」で生成した配列の添字の範囲は?
a. 1〜99
b. 0〜99
c. 0〜98

> Color col[a1][a2]=new Color(0,0,a1);
問2:「int x;」で宣言された変数xに、値123を代入する手続きはどれ?
a. x = 123;
b. int x = 123;
c. int x[a2] = 123;
165160:02/09/10 08:36
>>164
問1 c
問2 a
166デフォルトの名無しさん:02/09/10 08:38
javaを入力できる環境にするにはJ2SEいうのを
淫すとーるするらしいけど、
ヴァージョンとかあるの?
あるなら一番あたらしいのを入れたいと思われ。
>>165
ネタだと思うが、わかってんなら直せやヴォケ
168160:02/09/10 09:05
Color col[];
col=new Color[99];
for (int a1=0;a1<99;a1++) {
col[a1][a2]=new Color(0,0,a1);
}
すみません、こうでしたね。
私が困ってるのは3行目の Color(0,0,a1) というコンストラクタを書くとエラーが出て困ってます。
コンストラクタじゃだめなんですか?
169初心者A:02/09/10 09:21
見た感じ2次元配列になってないような気がするけど
これは私が初心者だから?
170デフォルトの名無しさん:02/09/10 09:24
>>169
Color col[];
col=new Color[99];
for (int a1=0;a1<99;a1++) {
col[a1]=new Color(0,0,a1);
}
すみません、こうでしたね。
>>166
Javaを入力の仕方をおしえだたい
http://java.sun.com/j2se/
172初心者A:02/09/10 09:44
>170
実際にやってみたけど何もエラーにならなかったけど・・・
エラーメッセージはなんて出るの?
173デフォルトの名無しさん:02/09/10 10:12
>>172
成功しました。かなりぼけてました。ありがとうございました。
174デフォルトの名無しさん:02/09/10 10:19
>>144
ありがとう、助かりました
>>168
> 私が困ってるのは3行目の 

> for (int a1=0;a1<99;a1++) {
>>173
そもそも初歩的に間違っていたのでは?
177デフォルトの名無しさん:02/09/10 10:44
import com.nttdocomo.ui.*;

public class LabelDemo extends IApplication{
public void start(){
Panel panel=new Panel();
for(int i=1;i<=2;i++){
//テキスト表示位置左
Label leftLabel=new Label ("左寄せ",Label.LEFT);
leftLabel.setSize(96,15);
//テキスト表示位置中央
Label centerLabel=new Label("中央寄せ",Label.CENTER);
centerLabel.setSize(96,15);
//テキスト表示位置右
Label rightLabel=new Label("右寄せ");
rightLabel.setSize(96,15);
rightLabel.setAlignment(Label.RIGHT);
}

panel.add(leftLabel);
panel.add(centerLabel);
panel.add(rightLabel);

Display.setCurrent(panel);
}
}
どうすればいいんですか?
>>177
何したいんですか?
179デフォルトの名無しさん:02/09/10 10:47
>>178
見ればわかるじゃん。
180おれ馬鹿だから:02/09/10 10:50
>>179 じゃ説明して
IApplicationって、「interface Application」じゃなくて
「i-Application」なのか。。
>>181
i-mode Applicationだと思われ。

それを縮めてiAppli
>>177
panel.add(...)がループから外れてるよーに見えるが、
それでコンパイルできるのかしら
>>177
つーか、そもそも何でforループしてんの?
>>184
forはループのための命令です。
186デフォルトの名無しさん:02/09/10 11:05
185 :デフォルトの名無しさん :02/09/10 11:03
>>184
forはループのための命令です。
こういうかんじか。

for (int i = 1; i <= 2; i++) {
  String message = ">>184 forはループのための命令です。";
}
System.out.println (message);
>>170
亀レスだけど array.length 使えよ…。
189java厨:02/09/10 14:16
すみません、
JNI使って
アプレットからWindowsAPI使える方法を教えてください。
セキュリティの設定で解決できそうだと思うのですが〜
具体的には
java.security.AccessControlException:access denied〜
が発生しないで実行できるようになればと・・・
>>189 このへんに目を通せる方法があるぞ↓
http://java-house.jp/ml/topics/topics.html#security
191デフォルトの名無しさん:02/09/10 14:30
インターネットオプションのプロキシの設定とか取ってくる方法はありますか?
192デフォルトの名無しさん:02/09/10 14:33
タブで別れている数値データファイルがあるとき配列への読み込み方ってどうやったらいいんですか?
例えば
1 1 2 4
1 1 5 1
というファイルがあったとき2次元配列に読み込みたいのですが・・・
簡単な質問ですいません.
>192
やろうとしていることは「簡単」ではないのだが、
質問の仕方が厨房。
何がわからないのかもっと絞れ。

とりあえず、
java.io.BufferedReader.readLine()
java.util.StringTokenizer
java.lang.Integer.parseInt()
あたりを理解して出直してこい。
java.util.Vector もあった方がいいかな。
194デフォルトの名無しさん:02/09/10 15:58
javaインストールしたけど
ファイルがいっぱいあってわからん。
どうすりゃいいの?

195発破:02/09/10 16:03
HTMLやXMLを記述することをプログラミングといわないの
は何故ですか!?
HTMLやXMLはデータ記述言語で、
プログラミング言語でないから。
>>196
XMLに関しては反論が出そうな予感。
198発破:02/09/10 16:10
なんでプログラミングじゃないんですか??
>>198
プログラミングって何(何をすること)ですか?
>>198
データはプログラムじゃないから。
>>201
フォンノイマン型コンピュータはプログラムもデータとして扱われます。
>>195 >>198
スレタイも読めんのかヴォケ。スレ違いだ、逝って吉。
>>202
違う。
データとプログラムの区別なくメモリに展開されるだけ。
>>202
やっぱり出たか。その場合も
「プログラムはデータ」であって、
「データはプログラム」ではない。
FQはHTMLをプログラミング言語だと言ってのけます。
207発破:02/09/10 16:22
読めなかった!!!!!!!
208デフォルトの名無しさん:02/09/10 16:23
メールボムってどこで入手すんの?
209発破:02/09/10 16:24
難しくて何言ってんのかわかんない・・・・
もしかして

発破=860

??????
211発破:02/09/10 16:25
860って何??
なんかhtmlは繰り返し(forとかwhileとか)がないから
プログラム言語ではない。みたいなことをみたことがあります。
xsltはプログラミング言語?
SQLもプログラミング言語とは呼びたくない。
215デフォルトの名無しさん:02/09/10 17:01
>>211
数字
216デフォルトの名無しさん:02/09/10 17:02
>>212
HTMLは言語の一種ではあるが「プログラム」ではないから
プログラミング言語ではない。
純粋なSQLもそれ単独ではプログラムにならないので
プログラミング言語ではない。
(SQLPlusやTransact-SQLはプログラム言語)
>>212
>>216

そんなことに結論をみいだしたところで、なにもプログラムは組めないぞ。
試験でもやるのなら別だけど・・・。
でもHTMLをプログラミング言語だと本気で思っていたらかなり恥ずかしい。
219java厨:02/09/10 17:28
>>190

判りました。
どうもです。
220161:02/09/10 17:44
こういう質問はダメだったんですか?
>>220 = >>161
Javaとどういう関係が?
>>212
HTMLはHyperTextMarkupLanguage。
その名の通り文書を整形したりするだけの限られたSGMLアプリ。
JPopupMenuはマウスリリースイベントで使う者なんだけど、
これってミギクリックしか対応しないの?
左クリックで出したいのですが・・・
リソースバンドルってのを使って拡張子がpropertiesのテキストファイルから
値をとりだすようにしたんだけど、日本語が入ってると文字化けしちゃいました。
で、ネットで調べてみたらnative2asciiをつかって変換しなくちゃならない
ってのがわかり、文字化けは解決しました。

しかしそこでふと思いました。
そもそもテキストファイルに切り出すようにしたのは値を変更したいときに
ソース書き換えてコンパイルし直すのが面倒だからでした。
それなのに、native2asciiでいちいち変換しなくちゃならないんじゃ
コンパイルし直すのと大差なくてやっぱり面倒くさいです。

結局じぶんでファイル(形式はシフトJIS!とか決めてしまって)を読み出すのを
作り込むしかないんでしょうか。
>>224
エディタに細工するとか、こういう↓特製のエディタ使うとか
http://home2.highway.ne.jp/mutoh/tools/ResourceEditor/
>>224
文字コード変換を行うFilterInputStreamのサブクラスを作成する。
Javaについての素朴な質問です。
現在JLabelへアイコンを貼り付ける作業をしているのですが
条件によってアイコンを切り替えたいとおもいます。
そこで質問なんですが、切り替えする場合、
そのJLabelにもともとはってあるIconImageを無視してそのまま
setIcon()で新しいIconImageに切り替えてもいいんでしょうか?
そうするともともとのIconImageはガーページされるんでしょうか?
よろしくおねがいします
228デフォルトの名無しさん:02/09/11 12:40
実行するプログラムの引数が、コンソールプログラムだったらStringクラスですよね。
で、このときファイルパスとか分かるわけないのにどうしてプログラムは目的のファイルがきちんと分かるのでしょう?
ただ単に実行しているプログラムのあるディレクトリを探索して合致するのを持ってきているだけですか?
>>227
ゴミ収集の事をゴミとは言わない
×ガーページ
○ガーベッジコレクション
230デフォルトの名無しさん:02/09/11 13:25
ファイルの記載内容をいじって同じファイルに上書きするプログラムを作っているんですが、BufferedReaderで読んでいるときにBufferedWriterで書き出すことができないので困っています。
一時ファイルをつくってそのファイルの内容をコピーしようにも、コピーするようなメソッドはFileクラスには見当たらないですし・・・
>>230
一時ファイルに出力して正常終了できたら
元ファイル→バックアップファイル
一時ファイル→元ファイルと同じファイル名
にリネームするようにすれ。
異常終了した場合元のファイルが無傷ですむ。
>>227
-------------------------------------------------------------
import javax.swing.*; import java.awt.*; import java.io.*;
public class IconWatcher implements Icon {
  final Icon icon;
  public IconWatcher (Icon icon) { this.icon = icon; }
  public int getIconHeight () { return icon.getIconHeight (); }
  public int getIconWidth () { return icon.getIconWidth (); }
  public void paintIcon (Component c, Graphics g, int x, int y) { icon.paintIcon (c, g, x, y); }
  protected void finalize () throws Throwable { System.err.println ("finalized: "+ this); }
  public static void main (String[] args) throws Exception {
    JLabel label = new JLabel ();
    label.setIcon (new IconWatcher (new javax.swing.plaf.metal.MetalCheckBoxIcon ()));
    label.setIcon (new javax.swing.plaf.metal.MetalComboBoxIcon ());
    System.gc ();
    System.out.print ("enter ->");
    BufferedReader d = new BufferedReader (new InputStreamReader (System.in));
    d.readLine ();
  }
}
-------------------------------------------------------------
finalized: IconWatcher@786e64
enter ->
-------------------------------------------------------------
233デフォルトの名無しさん:02/09/11 14:31
研究でJava言語でプログラムを書かなければならないのですが、
プログラムを書くのにオススメなエディタなどあれば教えて頂けないでしょうか?
ちなみに現在はMKEditorを使っています。
タブエディタなので複数のソースを編集するのには便利ですが、
もっといいものがあるのではないかと思って探してみたんですが、
コレというものが見つからないので・・・
俺はxyzzy+JavaTinyConsoleを使ってるが、
諸般の事情により素人にはおすすめできない
ところで、Java言語ってゆーひとたちは
COBOL言語、Pascal言語、C++言語、 BASIC言語とか言ったりするのだろうか?
>>235
言う。
237227:02/09/11 14:57
>>232
ファイナライズ使えば確認できることをしらなかったです。
ありがとうござます
>>235 「言語」つけるとなんかアホっぽいな(w
「Pascal言語」「C++言語」はアリだろう。
「COBOL言語」はムリ。
「BASIC言語」は微妙。
C#言語
「Pascal言語」も微妙じゃない?
「〜言語」の「〜」の部分が長いのは「言語」をつけずに言うと思う。
JTableで質問があります。
JTable.getModel()でTableModelを得ようと思うのですが

DefaultTableModel usermodel;
JTable usertable();



usermodel=(DefaultTableModel)usertable.getModel();

上記の内容でコンパイルすると
「推奨されないAPIを仕様またはオーバーライドしています」
と警告されてしまいます。問題なく動くのですがちと不安です・・・。
回避できる良い方法は無いのでしょうか?
243デフォルトの名無しさん:02/09/11 16:06
>234
xyzzyって機能がすごい一杯ついてますね。
たしかに便利そうなのですが、
素人なのでこんなに機能がテンコ盛りのソフトは使いこなせない・・・
コマタ・・・
>>242
JTable の getModel() は deprecated じゃないから、
>「推奨されないAPIを仕様またはオーバーライドしています」
ってのは別の箇所だと思うけど。
ところで、 Java で
> JTable usertable();
って出来たっけか?
>>241 COBOLは何々language、BASICは何々codeだけど、PascalはPascal。。
>>245 できん
JFileChooserクラスのsetFileFilterメソッドについて質問があります。

JFileChooseを使用してファイルダイアログを表示するさい
特定の拡張子だけを選択できるようにするためにFileFilterを使用しています。
FileFilterのクラスはdemoにあるExampleFileFilterクラスを利用しています。

ここで”特定の拡張子”だけを表示させたいのですが
ファイルダイアログのファイルタイプを見ると”全てのファイル”が選択できてしまう為
”特定の拡張子”だけ見えるファイルダイアログを表示させる事ができません。

ファイルタイプを見ると”全てのファイル”を選択できないようにする方法はないでしょうか?
>>248
日本語が狂ってないか?

>ファイルタイプを見ると”全てのファイル”を選択できないようにする方法はないでしょうか?

ファイルタイプのコンボボックスを開いても”全てのファイル”を選択できない、
という状態にする方法はないでしょうか?

ってこと?
いや、
「ファイルタイプを<見ても>”全てのファイル”を選択できないようにする」
の方がいいか
>>248
たぶんこれ↓でしょ。「setFileFilterメソッドについて」と決め付けたのが敗因。
http://java.sun.com/j2se/1.4/ja/docs/ja/api/javax/swing/JFileChooser.html
setAcceptAllFileFilterUsed
public void setAcceptAllFileFilterUsed(boolean b)
AcceptAll FileFilter を選択可能フィルタのリストで有効な選択肢として
使用するかどうかを決定します。false の場合、AcceptAll ファイルフィルタは
使用可能なファイルフィルタのリストから削除されます。true の場合、AcceptAll
ファイルフィルタは実際に使用されるファイルフィルタになります。
252248:02/09/11 18:06
>249
確かに日本語めちゃめちゃでした。すいません。さらっと読み返した程度でバグに気づきませんでした^^;

正しくは
>250
が、お聞きしたかった質問内容でした。

>251
setAcceptAllFileFilterUsed(false);
でうまくいきました!
ありがとうございました。
抽象的な質問で申し訳ないんですが・・・。

バイトコードが一つあって、それの実行中に設計外の他のクラスを読ませる・・・例えば
本体があって、プラグインとなるコードを用意して本体の実行中に指定すれば、
新しい関数が使える!(もちろん引数と返り値はあわせておく)、みたいなことは
Javaで可能なのでしょうか?
254困り中:02/09/11 19:08
JavaアプリケーションにWindowsからファイルをDnDできる事はわかったんだけど
Javaアップレットでも同じ事って出来るの?
俺様ただいまアップレットにファイルをDnDしようとすると
(IEがイベント拾ってるのか?)ファイルを開こうとしる
IEのダイアログが出てしまって困り中。
>>253 ClassLoader
>>253
ClassLoader#forName("class-name").newInstance()
Bean#instantiate(class-loader, "bean-name")
>>255-256
ありがとうございます。勉強してみます!
258デフォルトの名無しさん:02/09/12 00:51
String s = "123"と
String s = new String("123")はどう違うんですか?
String s1 = "123";
String s2 = "123";
String s3 = "123";
String s4 = new String( "123" );
とかやって s1 〜 s4 を equals ではなく == で比較してみよー
イメージのわかない人間には無駄な説明じゃねーの
String a = "123";
String b = "123";
String c = new String("123");

評価式 a == b ---> true
評価式 a == c ---> false
評価式 a.equals(b) ---> true
評価式 a.equals(c) ---> true
評価式 a == c.intern() ---> true

new String (...)すると、ユニークなインスタンスであることを
保障できるわけだな。それだけか
/**
* Initializes a newly created <code>String</code> object so that it
* represents the same sequence of characters as the argument; in other
* words, the newly created string is a copy of the argument string. Unless
* an explicit copy of <code>original</code> is needed, use of this
* constructor is unnecessary since Strings are immutable.
*
* @param original a <code>String</code>.
* @throws NullPointerException
* if <code>original</code> is <code>null</code>
*/
public String(String original) {
this.count = original.count;
if (original.value.length > this.count) {
// The array representing the String is bigger than the new
// String itself. Perhaps this constructor is being called
// in order to trim the baggage, so make a copy of the array.
this.value = new char[this.count];
System.arraycopy(original.value, original.offset,
this.value, 0, this.count);
} else {
// The array representing the String is the same
// size as the String, so no point in making a copy.
this.value = original.value;
}
}
264258:02/09/12 01:04
どっちでもいいってことですか?
>>264
状況によるのでは?
オブジェクト生成のコストを削減しようとしたら、cについても
String c = "123";
のほうが良いと思われる。
266258:02/09/12 01:10
>>265
どんな状況ですか?
267デフォルトの名無しさん:02/09/12 01:11
>>266
馬鹿ですか?
通常の利用では不要、というか、インスタンスを増やすのは害でしかないぞ。
馬鹿な人間は
String a = new String("123");
String b = new String("123");
String c = new String("123");
とやってくれ。

String d = new String( new String("1") + new String("2") + new String("3") );
でもイイと思う。
270 ◆k/Ubp.Kg :02/09/12 02:15
>>269
それでも気が付かない奴はいると思われ.
某 I のフレームワークがさ、そこかしこで

public String getHogeHoge(){
  …
  // ○○なら空文字を返す
  return new String();
}

とかやりまくってるわけよ。そんなに細かいオブジェクト作りまくったら GC の
Sweep に 5 秒もかかって当然だっつーの。「アプリでメモリリークがないか確認
してください」なんて筋弛緩剤並みのメールよこすなよ。トホホ...
細粒度で短命なオブジェクトの乱発ってのは、プロトタイプ段階までか。
しかし一度それに依存したインターフェイスを設計すると、
チューニングに伴い大幅な設計変更を余儀なくされる罠?
Swingアプリを作成しているんですが質問があります。
よく市販ソフトを立ち上げてる最中(初期化中)にそのソフトのタイトルイメージ
が表示されるものがほとんどですよね。今、それを再現しようと思っているのですが
一体どのようにしてやるのでしょうか?
コンストラクタでタイトルイメージ表示用のJDialogを表示させようとすると
OutOfMemoryが出てしまいます・・・ご伝授おねがいします
> コンストラクタで

なぜ
懐かしいデフラグの AA 見つけたので蛇足ながら改造して説明 (っていうかこの
AA 使いたかっただけだけど)。

  ∧_∧
 ( ´∀`)
 (    )
 ■■□■■□■_□■□

  ∧_∧
 ( ´∀`)
 ( つ□)
 ■■_■■□■_□■□

    ∧_∧
   ( ´∀`)
   ( つ□つ□
 ■■_■■_■_□■□
                   ∧_∧
                  ( ´∀`)
                  ( つ  つ   / 消
 ■■_■■_■__■_   □□□…‥ ─
                         /' ヽ\ 滅
    ギュッ   ∧_∧
        (´∀` ) ≡≡
 ■■■■■⊂   )
某 I の JDK 1.2 GC はこんなことやってるんだけど (Mark & Sweep, Compact) 、
■や□の連続ブロックが細かくなればなるほど、多くなればなるほどフラグメント
ができまくって時間がかかるのは明白。しかもサーバサイドなんで JVM に割り
当てた領域 512M とか 1.2G とかいう全体に渡ってやるから半端じゃない (その間
全処理が停止する)。1.3 になって一気に全部はやらなくなったけど。

同じ構成、同じ開発者で別フレームワーク使ったプロジェクトの GC が
0.6 秒平均だというのに、何かおかしいと思わんのかな。

>>272
大抵 Singleton + Factory や、やばそうならインスタンスプール作ったり
するね。っていうか return new String() なんて問題外なことやってなきゃ
ほとんどの場合そんなにクリティカルにヒットしないかも。
ごめん、ちょっとコーフンしすぎて大きいの貼っちゃった (藁
でもフロア内 200 人近い全オペレータの画面が 5 秒停止、しかもそれが
1〜2 分おきに起こるってすごいでしょ。
>>277
絵に描いたような悪夢だよなー
>>278
実はテスト段階から CPU 使用率 100% で 2〜3 秒張り付くって傾向出てたんだけどねー。
CPU がヘボいから SMB な本番機に乗せたら大丈夫じゃないっすか、って回答だったん
だけど、案の定本番機のほうがメモリが広大でさらにひどかったという裏話も… (GC
だけは JVM 全体がシングルスレッドで動くようなものだから SMB の威力が発揮で
きない気もするし…)。

初日の最初がすごかった。180 人いっせいに手が挙がったときはもうマッツアオ。
5 秒後に手は下りたけど、ブラウザの登録ボタンを何度も押してみる人、勝手に
ブラウザ閉じる人、リロードボタン押してみる人、いろいろ居た。

ちゃんと負荷分散せぇよ、という意見もあると思うが、いかんせんそのフレーム
ワークの基盤がクラスタ化未対応という罠…
280デフォルトの名無しさん:02/09/12 05:42
>>279
それは某○B○のSucksとかなんだか言うフレームワークでしょう。
正直その製品はフレームワークと呼べるレベルには達していないです。

私はソースコードを全部読みましたが、Javaでプログラミングをしたことがある
人ならはっきり言って激怒すると思います。

とりあえず、ジェネレータのコードは全部無視して、自分で書いてください(藁)。
ジェネレータのコードは屑です。
また、Sessionに積んであるデータはTransactionアクセス時に必要なもの以外は
全部削除してしまいましょう。

何せすべてのデータをSessionにつんでおく仕様ですからね・・・。

あとできればビジネスロジックを完全にフレームワークから分離させるようにしてください。
(特にフレームワークが提供するデータソースを使ってはいけません)
あとでほかにフレームワークに移行するときに大変ですからね・・・。
まぁ、TestCase通さないといけないから、さすがにこれは大丈夫かな?

遷移とデータのバリデーションだけにSucksを利用して、
バックエンドは普通のJ2EEアプリのようにキャッシュなどを駆使してコーディングするようにすると
Sucksを使って上司の面目も保てて、アプリも高速に動いてみんな幸せです。
281デフォルトの名無しさん:02/09/12 07:04
サーブレットから動的に画像のサイズ変更(例えば
サムネイル画像の生成など)を行いたいのですが、
ImageMagickを使わないで実現するにはどうしたら
よいのでしょうか?
282デフォルトの名無しさん:02/09/12 08:24
GUIプログラムをデバグするときなに使えばよいですか?
>>282
どちら様ですか?
284282:02/09/12 08:29
もちろんjavaでなんですけど。jdbが具合が悪いので。
>>284
至る所にSystem.out.printlnでも 
JBuidler や Forte を使うとか。

実用度は低いけど GUI 用の UnitTest ツールなかったっけ?
287282:02/09/12 08:44
>>285
そういうのを何とか回避したいんです。最後の手段ではありますが。

>>286
Jbuilderは商用だから手が出ないとして、Forteってデバッガ付いてたんですか。
試してみます。
>>287
> そういうのを何とか回避したいんです。

至る所にSystem.out.printlnをいれるのを回避するためには、
デバッグ用にいれたSystem.out.printlnがある行を削除する。
>>288
何か良い考えに聞こえるよな。
GUIでprintln使うのってほとんどデバッグ用だろうし。
public class A{
 private static final boolean DEBUG = true;

 public void method(){
  if( DEBUG ) System.out.println( "デバッグ用メッセージ" );
 }
}

みたいに埋め込むとか。
DEBUG を false にしとけば
コンパイル時に削除されるって話だけど。
(本当かは知らん)
>>290
その程度の話、本当なのかわからないなら答えないほうがいいです。
質問読んでないようだし。

>>291
GUIでデバッグを行いたい。でもIDEを使うのは断固拒否する。なお、jdbは動かん。

って言うのが彼の注文だろう?
>>292
至る所にSystem.out.printlnも何とか回避したい って書いてあるが?
総合すると、彼の注文はデバッグしたくないって事でよろしいですか?
GUI環境でのSystem.out.printlnって便利だけどな
ユーザーから見えないし、開発者からはよく見えるし

>>290
変数いじるくらいなら、コメントアウトして空関数にすれば〜
んじゃ、組み込まれないし
296デフォルトの名無しさん:02/09/12 10:45
for(lngMid=1;lngMid<=50;lngMid++){
  for(lngAttach=0;lngAttach<6;lngAttach++){
    strAttach=""+lngAttach;
    strMid=""+lngMid;
    strQuery="select count(attachment) from skill_tbl where m_id='"+strMid+"' ";
    rs = dba.DoQuery(con,strQuery);
    while(rs.next()){
      rs.next();
      strTotalple+=rs.getString("count(attachment)")+",";
    }
  }
}

構文上間違えているところ有ります?
DBからデータを8項目しか取出せないんですけど。
>>296
>    while(rs.next()){
>    rs.next();

偶数番目のデータしか扱わない仕様ですか?
298296:02/09/12 11:03
>>297
すみません、書き間違いでです。
2つめの rs.next(); 
は、要らないんでした。

メソッドのパラメータに配列を使用するにはどうすればよいのですか?
>>299


public static void Main(String[] arg)

とか見たこと無い?
>296
>strQuery="select count(attachment) from skill_tbl where m_id='"+strMid+"' ";
の下にSystem.out.println(strQuery);
でクエリーを確認してみるとか
>>296
strAttachは何のためにあるの?
303感動した!:02/09/12 12:06
> strTotalple+=rs.getString("count(attachment)")+",";
これはちょっと凄いな。動くんだねこれ。ふつうは
SELECT count(...) AS cnt WHERE ... とか名前付けておいて
rs.getString ("cnt") で引っ張るとか、あるいは単に
rs.getString (1) ってするんじゃない?
>>287
じゃあ LOG4J でがんがんログとるとか。
配列を返すにはどうやったらいいの?
public String[] hoge(){}
>>290
コンパイルした奴を逆コンパイルしてみ。
全部消えてるよ。
>>307
いや、手持ちのjdkのコンパイラなら調べたけど。
全てのコンパイラがちゃんと消してくれるかどーか自信が無いんで。
309 ◆k/Ubp.Kg :02/09/12 14:29
jikesでも消えてる。
310デフォルトの名無しさん:02/09/12 16:31
java.utilのHashMap,HashSet,Hashtableって
どうちがうのでしょう。
おそらくそれぞれ向き不向きがあるのだろう
とは思いますが。。。
311デフォルトの名無しさん:02/09/12 17:25
>>310
HashtableはJDK1.0時代からある古い形式のコレクションクラス。

HashMap,HashSetはJDK1.2から導入された。
ほかのMapやSetのシリーズとインターフェースが統一されている。

古い形式のHashtableなどは複数スレッドから同時アクセスの際に
デフォルトでsynchronizedで同期化されているのに対し
新しい形式のコレクションクラスはこれを実装していない。

なぜなら同期化は少なからず実行速度に影響があるにも関わらず
不必要な状況も多く、これを選択できないのは理不尽だからである。

新しい形式で同期化されたコレクションが必要な場合は下記のように
同期化されたバージョンのインスタンスを取得するようにする。

Map m = Collections.synchronizedMap(new HashMap(...));

Mapシリーズのコレクションは検索に使用するKeyオブジェクトと
取得する値のオブジェクトが異なるような場合に使用する。
たとえば辞書の見出しと本文のような。

SetシリーズはKeyそのものが使用するデータでもあるときに使用する。
>>311
ありがとうございます。
313hoho:02/09/12 18:50
javaアプリケーションをavaアプレットに変換しています。
アプリケーションでは、同一のディレクトリから、テキストファイル形式のデータを読んでいたのですが、
アプレットにしてからうまくいきません。アプリケーションでも、アプレットでも、ファイルを読み出したい場合、
みなさんはどうしてますか?
ブラウザの設定でできなくもないんじゃなかったっけ?
セキュリティ関係。
>>313
URLConnection を使ってストリームを開く
アプリケーションの時は"file:C:\ --- "でアプレットのときは"http://www ---"
テキストデータの内容によっては
リソースとしてCLASSファイルといっしょにjarに固めてしまう手もある。
avaアプレットってなんでしょうか?
「同一のディレクトリ」ってサーバ側でしょ?
セキュリティが問題になるのはクライアント側だから、ちょっと違うんでは?
>>313
↓このへんを組み合わせればできると思うよ
java.applet.Applet#getCodeBase()
java.net.URL
java.net.URL#openConnection
java.net.URL#openStream
319hoho:02/09/12 19:53
どうも、URLConnection あたりを探ってみます。ありがとうございました。
楽したいので、アプレットでもアプリケーションでも使える方法ないかなって思いました。
がんばってみます。
320デフォルトの名無しさん:02/09/12 20:06
SQLのSELECTで検索したレコードすべて(可変)を配列に入れて
戻り値として返したいのですが、何を使えばいいですか?
>>320
VectorでもArrayListでもなんでも。
>>320
インターフェイスを決めたいなら、あまり具象クラスでないほうが
いいと思うが。可変長というのもちょっと。
俺なら変更不能なListとか配列とか、あるいは別のアクセス方法か
>>296

1.PreparedStatementを使う。
2.StringBufferを使う。(strTotalpleの仕様しだいだが)
3.ResultSetを明示的にclose()する。
4.for()のカウンタの判定方法を統一する。(気分的な問題だけど '<' or '<=')
324デフォルトの名無しさん:02/09/12 23:53
すみません。お願いします。

Tom 10 20
Fred 30 40
Mary 50 60
のようなファイルがあったとします。これは名前と国語算数の点数です。
これを読み込んでいくにはどうしたらよいのでしょうか?

入門書にある
BufferedReader br =
new BufferedReader (new InputStreamReader(System.in));
String str = br.readLine();
を使うと1行全部読み込んでしまうのでどうにもなりません。
(ファイルのフォーマットは決められているので、変更できません。)
よろしくお願い致します。
>>324
java.util.StringTokenizer
326デフォルトの名無しさん:02/09/12 23:55
IBMのJavaVMって良いの?
327324:02/09/12 23:59
>>325
ものすごい速レスありがとうございます。
ヘルプを見たところ、なんとかいけそうです。

ただ、データを1つ1つ読み込んでいく方法は
ないということで、よいのでしょうか。
328デフォルトの名無しさん:02/09/13 00:15
プログラム要求↓でオブジェクト指向設計でJavaにて実現するという学校の課題があり、
とりあえず要求をみたしたものを作ってはみたのですが、自信がありません。
恥をかくのは覚悟の上でjavadocで抽出したものをさらしてみました。
http://www.iam.ne.jp/~ebisen-iky/index.html
おひまな方、どんなことでもいいのでご指導いただけませんか?
できたらOO的なとこをお聞きしたいです。

・全会議室の予約状況を確認できる。
・指定日時の空き会議室の予約を入れたり、予約を取り消したりできる。
・指定日時の空き会議室を検索できる。
・会議室名は2桁の階数と2桁の部屋番号で表される。
・予約時刻や時間は分単位まで扱う。同一会議室の利用間隔は一定時間(15分)を空ける。
・会議室には収容人数の違いがあり、出席者数を管理する。
・会議室データファイルは管理者だけが設定できる。
・予約の任に当たる人だけが利用するUNIX計算機が用意されるので、その計算機で利用できるツールとする。
・ユーザ認証はOSレベルで行うので、このツールでサポートする必要はない。
・月毎の会議室利用状況を表示できる。
>>327
ちょっと癖あるけど StreamTokenizer でも使ったら?
330327:02/09/13 00:21
>>329
ありがとうございます。
勉強してみます。
>>327
1.4なら、String#split(String regex) も便利.
line = reader.readLine();
String[] array = line.split("\\s+")
とか
332デフォルトの名無しさん:02/09/13 00:42
時間の加算・減算がしたいのですが。
正確に言うと
YYYYMMDDhhmmss +(-) hhmmss がしたいんです・・・
なにかいいアイデアないですか?
333327:02/09/13 00:48
>>331
ありがとうございます。
正規表現はよくわからないのですが、単純なもので成功しました。
すばらしいですね。
334327:02/09/13 00:51
スレよごし、すみません。
>>331さん
\\s+の意味わかりました。ほんとすごいです。
ありがとうございました。
>>332
Calendar c = Calendar.getInstance();
c.set(originalTime);
c.add(Calendar.HOUR_OF_DAY, hh);
c.add(Calendar.MINUTE, mm);
c.add(Calendar.SECOND, ss);
>>328
あまり考えずに、フィーリングで指摘するなら
GUI builderがGUI構築以外の処理(管理処理系)を行っているのは不自然かな。

管理用のMeetingRoomManagerを別途設けて管理処理はそこへ委譲する。

データの流れとしては
登録処理GUI ----> MeetingRoomManager
表示処理GUI <---- MeetingRoomManager
こんな感じ?
337336:02/09/13 01:49
多分画面遷移の管理のためとして、builderのコンストラクタの引数にparent
があると思うのですが、MeetingRoomManagerと同様な GUIManagerとでも言うのでしょうか、
画面管理用のクラスとかはどうでしょう。
338336:02/09/13 01:51
たびたびすみません

訂正↓
登録処理:
 GUI ----> MeetingRoomManager

表示処理:
 GUI <---- MeetingRoomManager
339328:02/09/13 02:34
>>336
レスありがとうございます。

>管理用のMeetingRoomManagerを別途設けて管理処理はそこへ委譲する。

なるほど確かに、現状だとGUIbuilderの具象クラスをいちいち見ていかないと
遷移がどうなってるのかわかりませんし、不自然ですね。
親GUI→子GUI→孫GUI→…
でなくて
親(?) MeetingRoomManager
↑↓
子(?) 各GUI
みたいな感じでしょか

ありがとうございますです
340デフォルトの名無しさん:02/09/13 07:57
JavaBeansを作る場合Beansのファイルを別のフォルダに
いれないといけないのですか?
341デフォルトの名無しさん:02/09/13 13:00
hashtableのkeyの比較方法ってどうなっているのでしょうか。
342デフォルトの名無しさん:02/09/13 13:11
>>340
多のJavaClassと同じく作ろうとするbeansの属するパッケージによる。
パッケージについて調べれ。

>>341 Object#hashCode()とObject#equals()を使う。
これらはオーバーライド可能なので自分の作るKeyクラスで
カスタマイズ可能。
343デフォルトの名無しさん:02/09/13 15:31
すいません質問があるんですが、
コンポーネントに、リスナーを登録するとき例えばボタンに登録する場合

button1.addActionListener(new ActionListener());

って言うように書きますが、ActionListener はインターフェイスなのに
なぜ new 出来るんですか?
なにとぞお願いします。
他からクラスをロードしたとき、
Object = class.newInstance();

で、生成されたのが走りますが、このクラスの中のメソッドに引数を渡す
(で、返り値を得る)にはどうしたら良いのでしょうか・・・?
>343
たまたま読んでいたものなのですが
ttp://stslabo.sts.co.jp/Java/Tutorial/Primer/4_4.html
が答かもしれません。
ネタはほどほどにお願いします。

>343
その ActionListener が java.awt.event.ActionListener かどうか
確認してみましょう。

>344
走らないよ。
キャストって知ってる?
347340:02/09/13 16:19
>>342
言いたいことがよくわからないのですが…
>>343
おいおい>>346確かに表記に誤りはあるけどインナクラスぐらいは教えてあげなね
java.awt.event.ActionListener か確認しろとかわけわかめ

343はここに詳しく書いてあるよ
ttp://www.asahi-net.or.jp/~dp8t-asm/java/tips/AnonClassParam.html
349ひょーっ:02/09/13 17:15
class Outer {
 public static void main(String[] args) {
  new Object() {
   public String getHello() {
    return "Hello, Anonymous!";
   }
  };
  
  Outer$1 o = new Outer$1();
  System.out.println(o.getHello());
 }
}
ttp://www.asahi-net.or.jp/~dp8t-asm/java/tips/AnonClassParam.html
    void addDialog(Button button, Dialog dialog) {
        final Dialog dialog_ = dialog;
        button.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent evt) {
                dialog_.setVisible(ture);
            }
        });
    }

なんじゃこりゃ。
    void addDialog(Button button, final Dialog dialog) {
...
                dialog.setVisible(ture);
...
でいいじゃん?
>>351
>final属性の場合には無名クラスから参照することが可能となります。
ってのを強調したかったのか?いや、あんまり強調されてもいないし…
かといってここで話すネタにもならないし、作者にメールも面倒くさいし… 放置?(w
>>351
ture がやけに気になったよ(w
質問です。
例えば java.nio.channels.SocketChannel における
メソッド connect(SocketAddress remote) のように
すでに実装済かつ利用可能であるのにもかかわらず abstract
と宣言されているメソッドは、いったいどのような理由で
abstract なのでしょうか?

ひょっとしてプラットフォームによっては未実装、つまり
cross-platformであることが必ずしも保証されていない(?)
からなのでしょうか?
>>354 どこが実装済みなのだ?abstract classじゃん。
>>354
ああ、何かわかった。
Factoryかなんか使っててあなたのプログラムからはそのクラスをその基底クラス(抽象クラス)で受け取ってるから不思議に感じているのでは?

abstract class hoge
{
abstract public int h();
}

class gta : hoge
{
punlic int h();
}

buublic class a
{
static hoge HogeFactory()
{
return new gta();
}

public static void main(String[] arg)
{
hoge hog = HogeFactory();

}
}

みたいな。
357354:02/09/13 18:56
私の環境(os.name = Linux, java.version = 1.4.1-beta)では
これ↓が普通に動くんです。ですから SocketChannel#connect() は
実装されていると判断したのですが・・・。

import java.nio.channels.SocketChannel;
import java.net.InetSocketAddress;

public class Test {
  public static void main(String[] args) throws Exception {
    SocketChannel sc = SocketChannel.open();
    System.out.println(sc);
    sc.connect(new InetSocketAddress(args[0], Integer.parseInt(args[1])));
    System.out.println(sc);
    sc.close();
    System.out.println(sc);
  }
}

出力結果(java Test www.2ch.net 80)

java.nio.channels.SocketChannel[unconnected]
java.nio.channels.SocketChannel[connected local=/xxx.xxx.xxx.xxx:xxxx remote=www.2ch.net/64.71.145.43:80]
java.nio.channels.SocketChannel[closed]
>>357
>SocketChannel sc = SocketChannel.open();

が俺の書いた

hoge hog = HogeFactory();

と同じな。

ポリモルフィズムの勉強とかをすればいいよ。
>>357
試してみればいい。
System.out.println (sc.getClass () == SocketChannel.class);
これは false を出力するはず。
sc の実際のクラスは、abstract class SocketChannel そのままではない。(はず)
>>344
> Object = class.newInstance();
文法が違うので、
Object instance = loaded_class.newInstance ();
と仮定する。
もしloaded_classの親クラス(orインターフェイス)「ClassA」を
<importしている(orできる)>なら、
ClassA instance = (ClassA) loaded_class.newInstance ();
instance.anyMethod (...);
とかやればいい。
import済みのクラスと全く関係ないオブジェクトだったら、
java.lang.reflect.Methodを使うしかないだろう。
http://java.sun.com/j2se/1.4/ja/docs/ja/guide/reflection/
361360:02/09/13 19:39
間違えた。「使いたいメソッドが、ClassAにも定義されているなら」か
362354:02/09/13 19:44
>>359
確かにfalseでした。つまりSocketChannel.open()はSocketChannelの具象サブクラス
(具体的にはsun.nio.ch.SocketChannelImpl)のインスタンスを返しているわけですね。
なるほどわかりました。
>>355-356>>358-359
ありがとうございました。
文字列囲うときの""と’’の違いってなんですか?
>>363
Stringとcharの違い。
あのー。>>348は、どうしてもコンパイルできないのですが、ネタですか。
366365:02/09/13 21:42
すみません。>>349でした。
>>365-366
一度、この2行↓をコメントアウトしてコンパイル。
> Outer$1 o = new Outer$1();
> System.out.println(o.getHello());
すると、Outer$1.class というファイルができるので、
クラスOuter$1を参照できるようになる。
368367:02/09/13 21:58
ちなみに俺もビビッタ
へぇ、無名共用体みたいなことが出来るんだ。
なんで Class.forName("int") で Integer.TYPE が返らんのだ。
>>370
プリミティブ型ってそれで生成出来るの?
intとIntegerは別物だと思われ。
>>370
Object obj = Integer.TYPE.newInstance ();
--------------
java.lang.InstantiationException: int
        at java.lang.Class.newInstance0(Class.java:281)
        at java.lang.Class.newInstance(Class.java:249)
        at int_type.main(int_type.java:3)
Exception in thread "main"
>>370
それが出来ちゃうと new int() もしたくなるな。
ぎりぎり出来ない範囲じゃない?微妙だけど
374370:02/09/13 22:35
Integer.class.getName(); -> "java.lang.Integer"
int[].class.getName(); -> "[I"
int.class.getName(); -> "int"
Class.forName("java.lang.Integer").getName(); -> "java.lang.Integer"
Class.forName("[I").getName(); -> "[I"
Class.forName("int").getName(); -> java.lang.ClassNotFoundException
375デフォルトの名無しさん:02/09/13 22:52
JavaOneってどんなとこですか?
376デフォルトの名無しさん:02/09/13 22:57
>>346
この人は java.awt.event.ActionListener かどうか確認させて
どうするつもりだったのですか?
377デフォルトの名無しさん:02/09/13 23:06
JPEGを表示するだけのプログラムなのにコンパイルが通らない・・・もうだめだ・・・へるぷ

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

class Image extends JFrame
{
 private Image img;
 public void paintComponent(Graphics g)
 {
  g.clearRect(0,0,getWidth(),getHeight());
  g.drawImage(img,0,0,this);
 }
 public Image(String title)
 {
  super(title);
  img = Toolkit.getDefaultToolkit().getImage("car01.jpg");
 }
 public static void main(String[] args)
 {
  JFrame w = new Image("画像配列");
  w.show();
 }
}
378377:02/09/13 23:08
ちなみに実行結果は以下のように。
参考書とかHPで調べても同じことやってるのにコンパイルが通らないなんて。
というか前はこのやり方で通ったハズなのに・・・

Image.java:11: シンボルを解釈処理できません。
シンボル: メソッド drawImage (Image,int,int,Image)
位置 : java.awt.Graphics の クラス
g.drawImage(img,0,0,this);
^
Image.java:17: 互換性のない型
出現: java.awt.Image
要求: Image
img = Toolkit.getDefaultToolkit().getImage("car01.jpg");
>>377
>private Image img;
private java.awt.Image img;
ってやんないとダメでしょ。
380デフォルトの名無しさん:02/09/13 23:25
>>378
Imageとjava.awt.Imageのクラス名がぶつかってるじゃん。
クラス名カエロ馬鹿。
381379:02/09/13 23:35
>>379
import java.awt.*;
って文頭にインポート文で記述してるけど・・・

>>380
うかつだった!なるぺそ&さんくす
>>376
>>346はActionListenerっていう別のクラスがあると思ったんじゃない?
>>370

public static Class forName(String className)
name がプリミティブ型または void を示す場合、
無名パッケージ内で name という名前のユーザ定義のクラスを見つけようとします。
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
このため、このメソッドを使って、プリミティブ型または void を表す Class オブジェクトを取得することはできません。
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
384デフォルトの名無しさん:02/09/13 23:48
すいません…ご質問します。
IE5.0、5.5、6.0でサポートしているJDKのバージョンって
それぞれいくつなんでしょうか?
アプレットを載せたWEBシステム開発するんですが、
ホムペ検索しても古いサイトしかなく、4.0くらいまでの情報しか
見つかりませんでした。

開発は1.3.1で行ってます。上記ブラウザで動作するために必要なものも
プラグイン以外に何かあれば教えて下さい。
385383:02/09/13 23:49
Javadoc読めよ。
>>384
1.1.8
>>384
たしか 1.1.4 互換のはず。
388383:02/09/13 23:55
>>384
JavaTM Plug-in コンポーネントを導入すれば1.4です。
>>381
クラス名がカブってるときは
パッケージ名付けてやれば OK です。
例えば、java.awt.List と java.util.List を同時に使う場合とか。
391370:02/09/14 00:00
>>385
じゃあ無名パッケージ内に "[I" ってクラスが存在するのか?
どうなんだゴルァ!!
そこに矛盾を感じろ!!
392370:02/09/14 00:02
ごめんなさい、言い過ぎました。
>>370
配列クラス([I)はプリミティブでない。
アホか?

name が配列クラスを示す場合、配列クラスのコンポーネント型はロードされますが、初期化されません。
name がプリミティブ型または void を示す場合、無名パッケージ内で name という名前のユーザ定義のクラスを見つけようとします。

意味理解できていますか?

name がプリミティブ型または void を示す場合
^^^^^^^^^^^^^^^^^^^^^^
>>394
private class intとかを探すってこと?
矛盾云々言う前に理解できてねぇ〜〜〜〜〜
>>370
一から出直して来い。
まともにドキュメントを理解できない奴が次々と
Java開発者として開発チームに導入されている今日この頃。
399370:02/09/14 00:43
いや〜ん。煽らないで〜。

プリミティブ(byte, char, double, float, int, short, long, boolean, void)の Class オブジェクトを間接的に得る方法は提供されていないのか?
誰か詳しい人いない?
Class.forName が純粋にバイナリ名から Class を返すのでないことは、"[I" で int[].class を返すことで明らか。
なら "int" から int.class を得る手段が用意されてても良さそうなのだが。
>>399
そこまでプリミティブにこだわる必要性があるんですか?(煽ってるつもりはない)
>>399
素直にInteger使えば?
402370:02/09/14 01:03
>>400
いや、代替手段はいくらでもあるので、必要性って言われるとそれは薄いんだけど。
Class.forName(int.class.getName()) で int.class が復元できないと、リフレクションを使うプログラミングでめんどい場合がある。
仕様として気持ち悪いし。
>>402 ひょっとしてあなた、ル(以下略
/*
* Return the Virtual Machine's Class object for the named
* primitive type.
*/
static native Class getPrimitiveClass(String name);
405370:02/09/14 01:51
>>404
をを!これだーっ!
て。package スコープじゃないですか...
っちうかそれってもしかして載せるとやばいんじゃ...


あかん。おっさん萎えたわ。
Integer.class.toString() -> "class java.lang.Integer"
int[].class.toString() -> "class [I"
int.class.toString() -> "int"
こんなんやし。
せめて Class.getSignature()、Class.forSignature(String) 用意してくれ。
406384:02/09/14 02:18
>>386-388
ありがとうございます!なんかみんな答え違うけど(w
1.1.4にしろ1.1.8にしろ、1.3.1で開発したもの動かすには
プラグイン入れて1.4にする必要があるということですね。
ありがとうございました。早速役に立てます。
int.classが得られると何がうれしいの?
>>407
彼はなぜかリフレクションばりばりのプログラムを書きたいらしい。
プラグイン用にクラスを指定するとかなら納得いくけどなんでintに執着するのかは不明。
すみません。
ヘルプを自分のパソコン上に展開する方法ってありますか?
jarとかいうのをどうかすると聞いたことがあるのですがわかりません。
なんのヘルプだ?
>>370
そんなにClass.forName()の仕様が気に入らないんなら自分でメソッド追加すればいい
public static Class classForName(String name) {
  if (name.equals("int"))
    return int.class;
  else if (name.equals("double")
    return double.class;
  else
    return Class.forName(name);
}
これ使ってればどれほど君の言う仕様がどれほど便利か/どれほど意味がないか
わかるんじゃない?
413名無しさん@Emacs:02/09/14 09:22
J2SDK1.4.1がそろそろ出るっていうのに、1.4.0_02をリリースしやがった。
じらしているのか????

しばらくは1.4.1RCで我慢?
415370:02/09/14 12:49
>>407

Class.forName(Integer.class.getName()) -> Integer.class
Class.forName(int[].class.getName()) -> int[].class
Class.forName(int.class.getName()) -> java.lang.ClassNotFoundException

これが、

Class.forName(int.class.getName()) -> int.class

こうなる。これに尽きる。別に Name でなくても、Signature でもかまわない。


>>412
確かに便利でもないし意味もないね。だってコンパイル通らないんだもん。プ。
>>415
っつか、
Class.forName(int.class.getName()) の戻り値が int.class
だと何が嬉しいのかサッパリわからないんだが。
>>307
>>402の、「めんどい場合」ってのを具体的に例示しないと、
共感を得るのは激しく難しいと思われ

>>391
> >>385
> じゃあ無名パッケージ内に "[I" ってクラスが存在するのか?
>>399
> プリミティブ(byte, char, double, float, int, short, long, boolean,
> void)の Class オブジェクトを間接的に得る方法は提供されていないのか?
> Class.forName が純粋にバイナリ名から Class を返すのでないことは、
> "[I" で int[].class を返すことで明らか。
> なら "int" から int.class を得る手段が用意されてても良さそうなのだが。
>>402
> Class.forName(int.class.getName()) で int.class が復元できないと、
> リフレクションを使うプログラミングでめんどい場合がある。
>>405
> せめて Class.getSignature()、Class.forSignature(String)
例えば java.reflect.Method#invoke に与えるパラメータ型リストは
Classの配列だけど、効率を度外視してもっと意味的に整った設計は、
「Type」「IntType」「BooleanType」とかの名前のインターフェイスが
別にあって、「ReferenceType」の場合だけ参照先のクラスをとれる、
という形だと思う。

つまり、
int.type : IntType (subclassof PrimitiveType)
String.type : StringReferenceType (subclassof ReferenceType)
String.type.getReferedClass () == String.class
とか。あるいは、
class String implements ReferenceType
とかでもいいけど
訂正:
× java.reflect.Method#invoke に与えるパラメータ型リスト
○ Class#getMethod に与えるパラメータ型リスト
420うわ、ひでー:02/09/14 14:00
また訂正:
× String.type : StringReferenceType (subclassof ReferenceType)
○ String.type : ReferenceType
× class String implements ReferenceType
○ String.class (instanceof ReferenceType)
>>418
invoke( Object obj, Object[] arg ) でしょ…
http://java.sun.com/j2se/1.4/ja/docs/ja/api/java/lang/reflect/Method.html#invoke(java.lang.Object, java.lang.Object[]
>>418
よく分からんが、そーすると何が便利になるの?
だから、便利になるとかじゃなくて、
現在の int.class とかの基本型に対応する Class オブジェクトってのが、
本質的には反則的な存在だってことがいいたかった。
「基本型はクラスと同列の存在ではなく、(オブジェクトへの)参照型と同列」
ってこと
424418-420=423:02/09/14 14:12
まわりくどかったけど、要するにこれ↓への反論だったということになるかも
>>402
> 仕様として気持ち悪いし。
>>423
なんだ… ただの自己満足か。
ちなみに、反則っつーなら null の扱いはどーすんだ?
>リフレクションを使うプログラミングでめんどい場合
ってのはどーなったんでしょう?
427418:02/09/14 14:32
>>425
> null の扱いはどーすんだ?
すまん。意味が分らん。少なくとも仮引数には基本型や参照型がついているはずだが
>>427
Reflection の中で Primitiveな型が反則だというなら
直接 Reflection とは関係ないが null も反則な値だろ?
Reflection をより合理的に、というなら全ての例外的なものを
合理的にすべきだと思うが。

例えば、null instanceof Object は true でないのに
methodA( Object obj ){ /* 空 */ } なる
Method methodA は methodA.invoke( obj, Object[]{ null } ) としても
IllegalArgumentException を返さない。
これは合理的でないと思うけど。

逆説的に「そーゆー事言い出すとあっちでもこっちでも
綻びなんか幾つでもあるじゃん」という事が言いたい。
>>428
基本型が反則って言ってるんじゃないよ。
nullはオブジェクトではなく、参照の値。
new Object ()は参照の値ではなく、オブジェクト。

「ほらみろ混同してるじゃん!」って言いたいw
>>428
しまっつ。墓穴ほっちった。
>>429 だった…
ちなみに、その「意味的に整った設計」では
null の型はどー設計するわけ?
>>431
変数(仮引数とか)や戻り値の型っていうのは、常にあるよね?
「null」と単独で書く場合は、実際の代入や、関数呼び出しなどの
文脈にマッチした参照型に決定される、と解釈していいのではないかと
ところで void の型はどー設計すんだろ?
voidはデータ型じゃないじゃん
リフレクションでinvokeしたときの戻り値がnullになるのが、
オブジェクト返しと同じでイヤーンとか?
>>432
他にも short -> int や float -> double などの型変換は
自動的に行われるけど、「意味的に整った設計」では
これらをどのように解決する?
>>434
なるほど、「意味的に整った設計」ってもデータ型限定なわけね?
お、なんかツッコミがたくさん。じゃあさ、面倒だからこうする
Class.forName (...) ←これはオブジェクトのクラスだけで、
変数に入れられるデータ型(っていうか、基本型+参照型。。
参照も基本型だっけ?)とか、関数の戻り値の指定ってのは、
便宜上混同するのはいいけど、いちおう厳密には区別があるわけだから、
混同するのが正義、みたいな>>370の言い方は変じゃないかって事。
438デフォルトの名無しさん:02/09/14 16:20
現在、ezplus(MIDP)アプリを造っていますが、文字列をRecordStoreに保存し、後ほど保存した文字列を取得すると言うことをしたいと思います。

さて、そこで、ファイルから読み込むとき、読み込みはうまくいっているのですが、
バイト配列から文字列へ変換するときにうまくいかず参っています。
セーブされたデータは、バイト配列として保存され、読み込みはうまくいっているようです。

したがって、byte s[]には、データが格納されている状態であります。
ここから、s.toString()を使ってバイト配列を文字列に変換しようと思っても、うまくいきませんでした。
コンソールにdataStringを出力してみると、"[B@be64248"と言う文字列が入っていました。

ここで、byte[]配列を正しく文字列方にするにはどうすればよいのでしょうか?
よろしくお願いします。

[B@be64248+++69 69

RecordStore record=RecordStore.openRecordStore("datafile_123456",true);
String dataString;
byte s[];
s=new byte[record.getRecordSize(1)];
n=record.getRecord(1,s,0);

dataString=s.toString();

System.out.println(dataString+"+"+n+"+"+record.getRecordSize(1));
new String(s)
>>438
new String( s );
じゃなかったっけ?
文字化けすんだったら
new String( s, "SJIS" );
new String( s, "EUC_JP" );
とか試してみるとか。
String foo = new String (s);
> dataString=s.toString();
あー確かに初心者がやりそう・・・コトバとして読めば通じてるからなぁ
443438:02/09/14 16:40
できました。ありがとうございます。
444409:02/09/14 17:09
>>410
すみません。APIのサンプルで、
http://java.sun.com/j2se/1.4/ja/docs/ja/api/index.html
をローカルに持ちたいのです。
>>411
わかりません。

俺って逝ってよしですか?
>>444
http://java.sun.com/j2se/1.4.1/ja/download.html

日本語版 J2SE 1.4.0 ドキュメント ダウンロード
があるので。
>>370
もしtemplateもどきを作ろうとしているのなら、
JDK1.5を待ってみるのもいいかもね。
boxingとかいろいろ追加されるらしいよ。
448444:02/09/14 21:39
>>445
>>446
ありがとうございます。本当に助かりました。
>boxingとかいろいろ追加されるらしいよ。

これマジ?
Vector<int> は夢また夢
451名無しさん@Emacs:02/09/14 23:58
Servletでserver.xmlで指定された<Context>タグ内のpathを取得するにはどうすればいいですか?
実際のpathを取得する方法は書いているんですが....


HttpServletRequestのgetContextPath()
>452
さんきゅーです。
ずっとServletContextの方をさがしていました。
454447:02/09/15 00:36
>>449-450
Javaにもtemplate欲しいよね。
->でも、そうなるとprimitive型の扱いに困るよね。reflectionとの相性も悪いし。
->boxingを言語仕様に追加すれば?

てな話が出ていて、JDK1.5に入れようとする動きがあるらしい。
まあ、最終的にどんな感じで落ち着くのかは全然わからんが。
455デフォルトの名無しさん:02/09/15 01:13
Javaってどういうことろに使われてるの?
携帯のアプリぐらいしか知らないんだけど。
http://pc3.2ch.net/test/read.cgi/tech/1026137766/l50
??Javaってどこで使われてるの??
457デフォルトの名無しさん:02/09/15 01:38
JavaってCOBOLの亜種ですか?
458370:02/09/15 02:45
思いの外長く続いてるな...

>>437
失敬な。統一して扱うのが正義と言ってくれ。
いや違う。*できるだけ*統一して扱うのが正義。区別があるのは分かるが、
同じクラスのインスタンスである以上、できるだけ統一して扱えるべきだ。

あと、Class.forName("int") で無名パッケージの int を探しに行くって
仕様もよくわからん。そもそも言語仕様上、class int{} はできないし。
でも、int.class を置いといてやると、ほんとにそれをロードしようとする。
try{
 Class.forName(str);
} catch(ClassNotFoundException e){
 if(str.equals("boolean")){
 ....
 }
}
てな実装の場合、int.class を忍ばせとけば、str が "int" の場合、忍ばせた
int.class がロードされる。やばいでしょこれ。

Class.forName がプリミティブ + void 型も扱えれば、プリミティブ型名 ->
Class インスタンスの変換をプログラマが行わなくて済むし、上の問題も
解決される。ReferenceClass と PrimitiveClass が存在するかのような
気持ち悪さも*少しだけ*解消される。
370のがキモイ
460デフォルトの名無しさん:02/09/15 08:49
Java1.4でフルスクリーンを取得する方法を教えてください。
よろしくお願いします。
461ロック:02/09/15 14:26
HTML、Javascript、スタイルシートを勉強しようと思っているのですが、どんな書籍を買えばいいでしょうか。

3つ全部載ってるものがありますが、それは良いのでしょうか?
>>461
スレ違いだろカス死ね
>>461
こいつマルチポスト、こういうヤシには絶対教えちゃ駄目
464ロック:02/09/15 15:28
すまん、今度学校でHP作りするんだ、皆に負けないように素晴らしいHPを作ろうとおもって…
マルチの件ははすまなかった、そういう焦りでマルチしてしまったんだ。
火曜日に最初の授業がある、是非書籍を教えてもらいたい。
465デフォルトの名無しさん:02/09/15 16:04
IEなどに入れたsunのJavaプラグインを、一時的に無効化することはできますか?
>>460 こういう意味?
ToolKit.getDefaultToolKit().getScreenSize();
DBから拾ってきた日付データ(YYYY/MM/DD HH:MI:SS等の文字データ)を
java.util.Date型の変数に格納したいのですがどうしたらいいでしょうか。
環境は、
SDK1.4
DB:Oracle9i
です。
すみませんが、お願いします。
>>467
ではなくて、Java1.4からサポートされている
フルスクリーンでの描画を行いたいんですが、
やりかたがわからないんですの。

知ってる人いたら教えて下さい
古巣クリーン
472デフォルトの名無しさん:02/09/15 17:22
getBytesの使い方がイマイチ分からないのですが、
↓の結果が、実行するたびに異なるのは何故なんでしょうか。

String s = new String("A");
System.out.println(s.getBytes());
473デフォルトの名無しさん:02/09/15 17:30
配列のアドレスが違うだけでは。
public byte[] getBytes()String をプラットフォームの
デフォルトの文字エンコーディングに従ってバイトに
変換し、結果を新しいバイト配列に格納します。
戻り値:
結果のバイト配列
>>473
Byte[]#toString()ってアドレス返すの?
476デフォルトの名無しさん:02/09/15 17:52
数値「1234」を文字列「001234」みたいに
指定した桁数まで前にゼロをくっつけた
文字列を取得したいのですが、どうやって
変換すればよいのでしょうか?
>>476
public static String intAttachZero(int number ,int place) {
StringBuffer it = new StringBuffer(Integer.toString(number));
for (int i = it.length(); i < place; i++) {
it.insert(0, '0');
}
return it.toString();
}

number = 1234
place = 6

あんまりいい方法ではないと思うけど
>>476
たとえば 6 桁になるまで 0 を詰めるのであれば俺は以下のようにやる。

int i = 1234;
String t = "000000" + i; // 6 個の "0" を付加
String s = t.substring(t.length() - 6); // 左から 6 桁とる
--------------
System.out.println (new byte[0]);
--------------
[B@e63e3d
--------------
toString
Object クラスの toString メソッドは、オブジェクトの派生元のクラス名、アットマーク (@)、およびオブジェクトのハッシュコードの符号なし 16 進表現から構成される文字列を返します。つまり、このメソッドは次の値と等しい文字列を返します。

getClass().getName() + '@' + Integer.toHexString(hashCode())
>>476
まともなやり方:
import java.text.DecimalFormat;
...
DecimalFormat f_06d = new DecimalFormat ("000000");
System.out.println (f_06d.format (1234));
482デフォルトの名無しさん:02/09/15 19:22
日付入力などの入力コンポーネントを配布しているところはありませんか?
484482じゃないんだが:02/09/15 20:04
>>483
おー ありがとー 感謝
>>468
Oracle9iではjava.sql.ResultSet#getDate()が使えないんでしょうか?
java.util.Dateじゃなくてjava.sql.Dateで返ってくるけど。
java.sql
クラス Date
java.lang.Object
  |
  +--java.util.Date
      |
      +--java.sql.Date
487デフォルトの名無しさん:02/09/15 21:32
Sunのホムペでタダで配布されてるJava SDKで作ったアプリで金稼いでもいいの?
>>487
タイーホ
>>488

  / ̄ ̄ ̄ ̄ ̄ ̄ ミ
  /  ―――――-ミ
  / / /    \|
  | /  (・) (・)|
  (6     つ  |
  |    ___ |   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
  |    /__/ /  < んなわけねーだろ!
/ |      /\   \__________
490デフォルトの名無しさん:02/09/15 21:53
>>488
>>489
ホントのところどうなの?
>>490
使用許諾嫁
492デフォルトの名無しさん:02/09/15 21:57
>>491
英語嫁ねーよ
馬鹿が商売するのか?
しね。
作ったアプリにまで及ぶ制限は言明されていない。よって許諾されているとみてよい
>>487
アプリできたら教えてくれよ
200ガバスまでならだすよ
全角英数字の半角変換やその逆の処理を行う
クラス、自分で作ってもいいんだけど、
PerlでいうJcodeみたいな著名なライブラリは
公開されてない? 英数字に限らず、カタカナの
変換や文字コード判定までついてるとベストだね。
497デフォルトの名無しさん:02/09/15 23:42
一週間、休暇が取れたので一気にJAVA(クライアントサイド)を覚えたいのですが一週間でどれぐらいいけますか?
当方、C言語とC++の経験があります。
四六時中JAVAやるつもりです。

あと、オススメの書籍・WEBサイトなどがありましたらご紹介願います。
>>497 >>7はチェックした?
499デフォルトの名無しさん:02/09/15 23:49
>>497
JAVAをなめるな!
最低1ヶ月取れ!
C++が出来ればかなりイケるんじゃない?
まぁ一週間でできたらスゲェけど
C++やってるなら一週間で
AWTとか使ったGUIぐらいまでいけそうな気がする
>>497
(1)言語仕様の違い、マナーの違いを覚える
(2)APIリファレンスに馴染む
ここを集中的にやればけっこうこなせるんじゃない?
504497:02/09/16 00:17
レスありがとうございます。
アル程度いけるかもしれないみたいな感じだったのでとりあえず頑張ってみようと思います。
505デフォルトの名無しさん:02/09/16 00:32
アプレット上で、TextFieldについて、addActionListenerメソッドで
TextFieldのイベントを拾うようにしたつもりだが、TextField上で
Enterを押したときしかactionPerformedが呼ばれないような気がするです。
TextField上のいろいろなイベント(キー入力、フォーカス取得、フォーカス
喪失など)を得るにはどうしたらいいんだろう?
>>505
「addなんじゃらListener」の形のメソッドを全部調べればわかるぞ
>>505
キー入力
addActionListener(ActionListener l)
フォーカス取得
addFocusListener(FocusListener l)
テキスト変更
addTextListener(TextListener l)

多分こんな感じで 詳しくはAPI仕様書を読んでみて
508468:02/09/16 00:58
>>485
>>486
レス遅れました。すみません。
getDate()ですか。これだとおっしゃる通りjava.sql.Dateで帰ってきますよね。
これをjava.util.Dateに変換できますか?
       ↑
 これイマイチ使いにくい・・・けど使わないといけないんです。

あと、java.util.Dateに指定の日付をセットするにはlong使うしかないんですかね。
DateFormat(YYYY/MM/DD)のような感じでセットする方法がありそうなんですけど。。。
申し訳ないんですけど教えて下さい。
509505:02/09/16 01:00
>>506
なるほど、ありがとう。これがawtのイベントモデルか。
implements ActionListener, TextListener, FocusListener, KeyListener
てな塩梅で必要な分だけリスナーをくっつけていくわけだね。
>>508 継承って知ってる?
http://java.sun.com/j2se/1.4/ja/docs/ja/api/java/sql/Date.html
クラス java.util.Date から継承したメソッド after, before, clone,
compareTo, compareTo, equals, getDate, getDay, getMonth, getTime,
getTimezoneOffset, getYear, hashCode, parse, setDate, setMonth,
setYear, toGMTString, toLocaleString, UTC
質問させてください。
Javaの初心者本を読んで、ウインドウを表示させるプログラムが書けるようになってきました。
ただ、起動時にコマンドラインを使うのが不満です。
どうすれば、ウインドウズ上のアイコンをダブルクリックで使えるようになるのでしょうか?
513508:02/09/16 01:07
>>510
あ、
java.util.Date
 java.sql.Date
でしたね。
すいません。アフォでした。
514513:02/09/16 01:09
携帯電話SH51シリーズのJAVAゲームを作りたいと思っている
のですが、何を使ってまず作業を開始すればいいのでしょうか?
教えてください。
>>512
実行可能jarにしてショートカットを作るとか?

http://java-house.jp/ml/archive/j-h-b/026213.html
http://java-house.jp/ml/topics/
>>7
いやーJavaって楽だね。
MFCと比べると。
>>508
java.util.Calendarおよびjava.util.GregorianCalendarを調べて、
Calendar#setDate()、Calendar#getDate()、Calendar#set()などの
使い方を調べると少し幸せになれるかも。
519513:02/09/16 03:07
Java2をわかり易く説明してくれているサイトってあるでしょうか?
>>518

ありがとうございます。今のところ、
java.text.DateFormatのDateFormat#parse(String source)
を使おうと思ってます。

java.util.Calendar調べてみました。幸せかみしめそうな。
とりあえずいろいろ試してみます。あぁ、ねみぃ。
>>519
本ぐらい買えば?お金ないの?じゃあ、ぐぐれば?
522513:02/09/16 03:39
すみません。初心者なもので・・・ではJava2の知識がわかり易く得られる
書籍を紹介していただけないでしょうか?
>>522
http://pc3.2ch.net/test/read.cgi/tech/1027593322/l50
初心者と言えば何でも教えてくれると思ってる?
ここで立て続けに質問するまえに
もう少し自分で探す、考えるってことも必要だよ
むしろプログラムなんて考えなきゃ作れないんだから
524523:02/09/16 04:03
あれ、いちおうスレタイは初心者大歓迎なのか…
でも、あまりにもあれだったから(T_T)
525513:02/09/16 04:32
>>523
申し訳ないとは思いましたが、ネット自体はじめて1月にも満たないので、
ほんとにわからないところもわからないんですよ。
2chも、2〜3日くらい前にモー娘。をgoogleで検索してスレッドがヒットして
初めて知ったくらいですし・・・けど本探してきましたので、情報ありがとう
ございました!!
526523:02/09/16 04:42
そうでしたか
こちらも少し言い過ぎたかも
モー娘。あたりで2chくるのは大物だと思いまふ
おれより全然やさしい人もいればその逆も
おれはありがとうと言ってくれたのでもう何も
javaでローカルのデータベースって使うことできるのですか?
VBやDelphiようなデータコントロールのようにローカルでデーダーベース
使えると便利だと思うのですが、自作したほうがよいですか?
528 ◆k/Ubp.Kg :02/09/16 05:31
>>527
ローカルのDBってなんじゃ?…と思ったんだけど、JDBCとかが望みのモノなんかな。
でもVBやDelphiみたいにGUIから簡単に使えるモノでもないよ。最近はそういうツールが出てるのかもしれないけど。
JBuilderにはDelphiみたいなGUIで使えるデータコントロールが付属するんじゃなかったっけ?
これとpure JavaなDBMSを組み合わせれば希望に近いことが出来るかも。
530デフォルトの名無しさん:02/09/16 10:30
>>529
IBMのCloudscapeはPureJavaじゃなかったっけ?
>>529
Pro以上はね。

JBuilderのコンポーネントはDelphiと比べるとかなり削られてるよ。
まぁ、それでも何とかしようとすればなるから良いけども。
532デフォルトの名無しさん:02/09/16 13:21
VBやDelphiみたいにGUIで簡単に使えるデータコントロールって何?
IDEからExcelみたいにテーブル操作ができるってこと?
>>527
hsqlってのがsourceforgeにあったのでちょっと使ってみた
まぁ動くって感じ
こういうやつかぁ。
Eclipseのプラグインもあるね。
536あなたは神様:02/09/16 14:26
int a=1;
byte b;

b=a;とやりたいのですが精度が落ちると警告されます。
byteValue() が使えそうだというところまで調べたのですが

b=a.byteValue();は
「間接参照できません。」というエラーです。
どなたかお願いします。
byteValue()はIntegerクラスのメソッドでつ。
どんなにがんばっても精度が落ちないわけがない
539あなたは神様:02/09/16 15:06
↑1はint でも byte でも1と思われ。

もういいや。JAVAはこんな簡単なことも
苦労するなんて。

やっぱMFCとMSVC++のほうが簡単だ。
ここももう2度ときませんのでレス不用。
C を使ってたのならキャストぐらい思いつかんのかと小一時間・・・
いや、その前にアフォ過ぎて唖然ポカーン(゚д゚)
>>539
簡単も何もMFCも満足に使えているのか激しく疑問。
543デフォルトの名無しさん:02/09/16 16:06
IRCクライアントって、java.net.SocketでサーバにIRCプロトコル遵守のバイト列を流し込めば完成ですか?
>>543
そうすると激しく一方通行なIRCクライアントもどきが誕生します。
>543
そりゃそうだろう。
まぁ、厳密には RFC2812 と ircd2.10.x ではちょっとだけ仕様が違う。
サーバや PIRC のバージョンをある程度限定せざるを得ないと思われ。
547デフォルトの名無しさん:02/09/16 16:59
すみません。板がわかりません。
ezplus関連の質問ってどこでするべきだったでしょうか?
この板なら、携帯Javaスレかな。
http://pc3.2ch.net/test/read.cgi/tech/1011977260/l50
549547:02/09/16 17:02
>548
早速のレスありがとうございました。
いってみます。
>>546
ワロタ
551551:02/09/16 17:07
XPのコマンドプロンプトでJavaプログラムしている方、途中まで
コマンドプロンプトに書いたものってどうやって保存するんですか?
552デフォルトの名無しさん:02/09/16 17:15
sonnnayatuinai
553デフォルトの名無しさん:02/09/16 17:19
XPだめじゃーん。
554デフォルトの名無しさん:02/09/16 17:23
せめて、メモ帳使えよ。

コーディング→メモ帳(javaファイル)
コマンド入力→メモ帳(cmdファイル)
555551:02/09/16 17:24
何使ってるの?!
556551:02/09/16 17:33
コマンド入力もメモ帳でやるの?じゃあなにからなにまで
手動ってこと?
>551-556
ジサクジエンデスタ。
558551:02/09/16 18:18
ではないです。
どうなんすか?
>>500
C++もJavaも同じだけど、言語仕様・文法を覚えただけで
その言語を習得したと思ったら大間違いだよ。
C++もJavaも膨大なクラスライブラリがあってこそ。

クラスライブラリを暗記する必要はないんだけどさ、
「たしかこんな機能をもったクラスがあったはずだ…」っていう
感覚を身に付けるのには、それなりに時間と経験が必要だと思う。

で、クラスライブラリの知識に関しては 他言語(C++)の経験はあまり役に立たないから
C++の経験があってもさほど意味なし。Javaの文法覚えるのが楽になるだけ。
560500じゃないんだけど:02/09/16 18:36
>>559
語尾が疑問符で真意の程は定かではないレスに対して、
そんな常識ならべたてられてもねぇ
>>556
プロンプトメインの場合はね。
とりあえず、プロンプトだけでプログラミングはしない。
エディタも使う。

でも普段はeclipse使ってる。
562デフォルトの名無しさん:02/09/16 18:47
double型の数値を1桁ずつchar配列に入れるにはどのように書けば良いんでしょうか。
>>562
Cでいう、sprintfみたいなことをしたいということ?
564562:02/09/16 18:56
>>563
1000桁区切りで,(カンマ)を入れるメソッドを作ろうとしてます。
565デフォルトの名無しさん:02/09/16 19:02
>>562
Double.toString(dbl)
で得た文字列を適当に処理したら。
566562:02/09/16 19:09
>>565
ラッパークラスか。サンクス子
>>564
\100,000みたいな感じにしたいなら、
java.text.NumberFormatと、そのstaticメソッドgetCurrencyInstance()を
調べることをお勧めする。
メモ帳とコマンドプロンプトか。痴呆としか思えんな(藁
>>569
まあまあ(w
スレタイに初心者大歓迎なんてあることだし、こういうことはままあることかと
meadow上でコマンドプロンプト(cmd.exe)動かせば、編集もコピペも自由自在ですよ!
572562:02/09/16 20:14
>>567-568
Javaでは無いと思ってたけどあったんですね…。
ありがとうございます。
とりあえず反応するけど・・・

XPでプロンプト使ってる・・・と質問されたのでメモ帳とプロンプトと答えた。
何か不都合でもありますか?

上でも書いたが普段はeclipseを使っている。

>>569の発言の意図がつかめません。

XPのコマンドプロンプトでJavaプログラムしている方、途中まで
コマンドプロンプトに書いたものってどうやって保存するんですか?

に対して「JBuilder使ってる」とでも答えろと?
アホ云々言う前に少しは頭使え
FontMetricsクラスのgetMaxDecent() 推奨されなくなった。
decentを英和辞典で調べてみたら...

ミススペルかよ
XPのプロンプトというなら
「簡易編集モード」の話じゃないの
http://pcweb.mycom.co.jp/special/2002/xpcommand/01.html
576デフォルトの名無しさん:02/09/16 21:07
Stringクラスで、日本語文字を2バイトとして返すにはどうすれば良いのでしょうか。

String s = new String("あ");
System.out.println(s.getBytes().length);

だと1バイトに…。
>>576
ところでエンコーディングは何にしたいの?
578576:02/09/16 21:14
>>577
Shift_JISです。
>>576
うちでは2バイトになったけど。

>String s = new String("あ");
とりあえず、これ禁止。
String s = "あ";
>>579
(・ε。・)え〜?禁止ってほどのことなの?
だって無駄じゃん
582576:02/09/16 21:35
>>579
一度バイト配列に入れたら上手くいきました…。

String s = "あ";
byte[] mb = s.getBytes();
System.out.println(mb.length);

>とりあえず、これ禁止
new String() 指定だとパフォーマンスが落ちるんでしょうか。
>>582
>>258-290を参照
>>580
PCやサーバで動かすならほとんど実害はないわな。
いいことも一つもないが。
組み込みや携帯なら禁止されてもおかしくない。
585デフォルトの名無しさん:02/09/16 21:51
たびたび質問ばかりで申し訳ないが、
awtのTextFieldで、文字の入力を
挿入モードじゃなくて上書きモードに
する方法を教えて欲しい。

さんざんググったし、本屋で立ち読み
しまくってきたが、ついに精魂尽き果てた。
String[1024] with new String ()s takes 45072 bytes
String[1024] with ""s takes 4112 bytes
587デフォルトの名無しさん:02/09/16 22:30
>574
Cloneableも非推奨になるかもしれないとか・・.
>>585
自力で上書きモードを自作する以外の方法が思いつかない。
TextFieldのTextEventが起きたときに文字の追加があるかどうかを調べて、
もしあれば追加された場所の1文字を削除するとか。
「文字の追加があるかどうか」を知るには、TextFieldの外部にテキストを持たないと
いけないなあ。追加された場所はTextComponent#getCaretPosision()でわかりそうな
気がする。
589585:02/09/16 22:55
>>588
なるほど、ありがとうございました。
TextFieldで[Insert]キーを押しても
なにも起きない点で、イヤな予感がしたが
その方法しか無かったとは。
KeyEventで作ってみた。これは面倒だなー
      field.addKeyListener (new KeyAdapter () {
        public void keyTyped (KeyEvent ev) {
          final char c = ev.getKeyChar ();
          if (!ev.isActionKey () && Character.isLetter (c)) {
            ev.consume (); // 処理を奪う
            final int loc = field.getCaretPosition ();
            final StringBuffer buf = new StringBuffer (field.getText ());
            buf.delete (loc, loc + 1);  // deleteCharAtと違って例外なし
            buf.insert (loc, c);
            final String edited = buf.toString ();
            field.setText (edited);
            field.setCaretPosition (loc + 1);
          }
        }
      });
591デフォルトの名無しさん:02/09/16 23:48
JEditorPane.setPage()でyahooとか指定すると(というかどこを指定してもほとんど)
例外がビシバシ発生するんですけど、これってJEditorPaneのバグ?

JDK1.4 / JEditorPane.setEditable(false)してます
592デフォルトの名無しさん:02/09/17 01:05
JAVA初心者です。
VCのような統合環境というか、ブレーク・ステップ実行等
の機能のあるソフトってのはないんでしょうか?
デバッグは大変ではないですか?
593デフォルトの名無しさん:02/09/17 01:10
>>592
jdb使ってもいいし。
この間、仕事で VisualAge for Java つかった。
重すぎるけど、ユーザインタフェースはまとも。
594デフォルトの名無しさん:02/09/17 01:23
>>593
情報ありがとう。
あるのはあるんですね。

さっき検索してVisualAge for Javaの値段にはちょっと
驚いてしまった
eclipse か fire & ice
>>592
Eclipse のデバッグ機能が軽くて使い勝手が良いのでお勧め。

すんません、X11 積んでない鯖で JPEG の縮小と GIF 変換したいんですけど
何か良い方法は無いでしょうか? デジカメ画像のアルバム的うpろーだーで
i-mode, J-SKY 用の画像 (ついでに PC 用サムネール) を鯖側で作りたいん
ですけど。
>>596
JDK1.4 なら、-Djava.awt.headless=true
それ以前なら、XFree86-Xvfb いれればいい。
>>591
ほんとだ。なんかものすげー事になってる。
こんな調子で何度も。表示するコンポーネント側の問題に見えるが。
それにしてもコールスタックが深いなー。
java.lang.NullPointerException
        at sun.java2d.SunGraphics2D.drawImage(SunGraphics2D.java:2744)
        at sun.awt.image.ImageRepresentation.drawToBufImage(ImageRepresentation.java:758)
        at sun.java2d.pipe.DrawImage.scaleImage(DrawImage.java:756)
        at sun.java2d.SunGraphics2D.drawImage(SunGraphics2D.java:2752)
        at sun.java2d.SunGraphics2D.drawImage(SunGraphics2D.java:2705)
        at javax.swing.text.html.ImageView.paint(ImageView.java:363)
        at javax.swing.text.BoxView.paintChild(BoxView.java:144)
        at javax.swing.text.BoxView.paint(BoxView.java:407)
        at javax.swing.text.BoxView.paintChild(BoxView.java:144)
600デフォルトの名無しさん:02/09/17 11:49
Win(Me) + JDK1.3.1 です。

Component を継承して update(Graphics g) を override しましたが、
repaint() 時にこのメソッドが呼ばれず、強制的に画面がフラッシュします。
#Canvas を継承すると自前のメソッドが呼ばれますよね。
これは仕様ですか?
601デフォルトの名無しさん:02/09/17 12:05
クラス・ライブラリについて教えてください。
javax.servletってSEのAPI仕様に説明されてないですよね。
でもJDKのSEでjavax.servletを使ったものもコンパイルできますよね。
ライブラリはどのような構成になってるのでしょうか?
602585:02/09/17 13:41
>>590
フォントは等幅フォントに限るとしても、入力された
文字が全角文字(って言い方も古くさいな)だった場合
とか、いろいろ考えるとかなり面倒。

まあ、地道にチマチマ実装していくしかないか。
サンプルコードありがとう。
603U ◆tFsGiu0c :02/09/17 21:04
>>601
それはservlet.jarとかj2ee.jarとかがクラスパスに入っているからじゃないの?
少なくともrt.jarには入っていないよ。
604デフォルトの名無しさん:02/09/18 00:24
JAVAアプリを単一のexeファイルにするにはどうすれば?
できない。
なぜならJAVAだから。
商用でいくつか exe にするプログラムが売ってるよ。
gcc でも出来なかったっけ?
バッチをexeにしる
608592==594:02/09/18 00:48
>>595-596
Eclipse、fire & iceですね。サンクスです。
早速DLさせてもらってます。
609デフォルトの名無しさん:02/09/18 00:57
んで?結局JEditorPaneってバグバグって結論でよいのかな?
JDK1.4.1でこんな状況だけど、もっと前のバージョンでは大丈夫なのか?
それとも回避する手段がある?
Javaは
あんまりネガティブな意見は嫌い。
611デフォルトの名無しさん:02/09/18 01:22
定数をどのクラスからも使えるようにしたいんだけど、
どうしたらいいですか?
その質問は
Javaにとっては禁句。
>>611

staticにしる
>>613

間違えた。public staticにしる
615デフォルトの名無しさん:02/09/18 02:28
>>612
611へのレスですか?
理由を知りたいです。!
616不明なデバイスさん:02/09/18 02:28
Javaのコンパイラは何がいいですか?
javacがおすすめ。
618デフォルトの名無しさん:02/09/18 02:36
J Builderってどうよ?
JうんこBuilder
>>614
定数ってんだから public static final にしとけよ…
JavaのSDKには文字列を暗号化するクラスはないのれすか?
あったら使い方教えてください
622デフォルトの名無しさん:02/09/18 12:07
配列って動的割り当てできないですよね?
>>622
Javaのオブジェクトは動的割り当て<しか>できないが、
それは何か可変長配列の事をいっておるのか
624デフォルトの名無しさん:02/09/18 12:15
>>623
ごめんなさい。Cみたいに確保とか開放を自分で指定して
ってことです。できますか?
>>621 お前、調べてないな。ぐぐったら一発だったぞ
>>624
だから、確保はnewで普通にできるだろ。
int[] array = new int[123];
参照が切れればそのうち解放されるっての知らないのか?
System.gc()すればたいてい時期が早まることになってるが
>>626
そうでした。忘れてましたnewで確保。
あんまり勉強してないので開放も何か
あるのかなって思って聞きました。すいません。
ありがとうございました。
> あんまり勉強してないので

なんか支離滅裂だな。大丈夫か
629デフォルトの名無しさん:02/09/18 12:45
StringTokenizerで文字を区切っているのですが、文字がない部分を
トークンとして判断してくれません。(あたりまえかもしれません)
a,b,c,,,dと言う文字で,,,も部分も""で処理したいのですが、
方法はありますか?
630U ◆tFsGiu0c :02/09/18 13:05
631デフォルトの名無しさん:02/09/18 13:25
「1.4.1 FCS がリリースされました ! 」
http://java.sun.com/j2se/1.4.1/ja/

と、いうことなのですが "FCS" って何の略なんでしょうか?
http://java.sun.com/products/jdk/rmi/archives/1216.html

それよりもダウンロードが途中で終わっちゃいます。
ミラーはないのかな・・・
>>631
767 :デフォルトの名無しさん :02/09/17 16:49
とは書き込んだものの、FCSってどういう意味?
RCはRelease Candidate、リリース候補、
つまり製品候補、最終候補のような意味だと判ったけど、
FCSはgoogleしても見つからなかった・・・・鬱

768 :デフォルトの名無しさん :02/09/17 16:58
>>767
First Customer Shipment。

って1.4.1出たのか。

769 :デフォルトの名無しさん :02/09/17 17:09
>>768
ありがとう。
敢えて訳すと「最初の顧客向け出荷品」になるんでしょうかね。
http://pc3.2ch.net/test/read.cgi/tech/990949654/766-769n

だそうです。
634デフォルトの名無しさん:02/09/18 14:50
自分で作ったJavaプログラムを実行したときに一度Win2kがフリーズして、
なにかJavaの起動に必要なファイルか設定を壊してしまったようなのですが、
よくわかりません。
それ以降、ウィンドウを出すJavaプログラム(いままで動いていたもの)全部の
起動時にWin2kがとまるようになりました。(コンソールだけのものは無事)
reとsdkを一旦アンインストールしてから入れなおしたんですが、事態が改善しません。
OSから入れなおさなきゃ直りませんか?
1.4.1rcです。
>>632,633
ありがとう、分かりました。
633氏紹介のスレは未見でした、今からちょっと見てきます。

636デフォルトの名無しさん:02/09/18 17:31
最近になってJavaをやり始めたものです。
コンピュータを起動して一回目のコンパイルのとき 
javac foo.java
とやると異様に時間がかかるのですが、こういうものなのでしょうか?

java foo
と実行するときも、一回目は時間が非常にかかります。
>>636
具体的に何分かかるんだよー。
CPUのスペックは?
638デフォルトの名無しさん:02/09/18 17:46
>>637
何分もはかかりませんけど、数十秒かかるんです。
二回目以降はすぐに終わるのでこういうものなのかと。
>>638
そーゆーもん。
ひょっとするとメモリが めちゃくちゃ少ないのかも?
>>638
マシンスペック(CPU,メモリ)とソースの規模晒してみ。そうでないとなんとも言えん
641デフォルトの名無しさん:02/09/18 20:13
タイピングソフト作ろうと思うのですが、参考になるようなコード書いて下さい
642java暦2週間:02/09/18 20:18
class statictics {
int intStaPopulation[] = new int[2];
intStaPopulation[0] = 3;
}

と打ったところ


']'がありません。
intStaPopulation[0] = 3;
^
<identifier>がありません。
intStaPopulation[0] = 3;
^
シンボルを解釈処理できません。
intStaPopulation[0] = 3;
^
エラー 3 個

というエラーが返ってきてしまい、コンパイルできません。
どこを直せばよいですか?また、その理由を
誰か教えてください。
お前は2週間何をやってきたのかと小一時間(略
さすが阿呆揃いですな。
645645:02/09/18 20:50
>>644
おまえのがアホやんか
>>642
intStaPopulation[0] = 3;
↑この一行は「実行文」なので関数定義の中にしか書けない。
おぬしのソースには関数定義がない。

int intStaPopulation[] = new int[2];
↑ちなみにこの行は
「staticticsというクラスには
intStaPopulationという名前のメンバー変数があって
その初期値は(int型の大きさ2の配列)である。」

という意味の「宣言文」だから問題がない。

647java暦2週間:02/09/18 21:28
>>646
ありがとうございますーーーーーーーーーー(まじで感謝
また、違うところでエラーが発生してしまったのですが
今度は甘えずに、自分で調べてみます
無理無理
649デフォルトの名無しさん:02/09/18 22:21
半角カナを全角に変換するには、Unicodeで変換するのが一番良いのでしょうか。
得意なエンコードでいいんでは?
>>634
http://pc3.2ch.net/test/read.cgi/tech/1002160815/658-671

の 658 と 671 を書いた者っす。
もしかして、JRE を 1.4.0_x に入れ直せば改善しませんか?

いや、未だに俺のマシンでは 1.4.1 で win2k がクラッシュするんで。
1.4.0 とか 1.3 では問題ないのに。

Sun に Bug 報告したいんだけど、「こちらでは再現しない」
とか言われて終りそうな気もする。(以前そんなことがあった)

ちなみに >>634 さんのマシンの環境とかどんな感じですか?
public void paint(Graphics g){
 g.drawImage(image,0,0,this);
}

このthisは、gを指しているんですよね?
653デフォルトの名無しさん:02/09/19 03:13
>>652
なんでそうなる?!
paintメソッドを含んでいるクラスのインスタンス
そのものを指しているはずですが。
654652:02/09/19 04:07
ムムム・・・全然理解してませんね自分・・・アタマガハレツシソウダ
655hoho:02/09/19 04:14
ava2Dで質問です。任意のShapeを直線で分割して、塗りつぶしたり出来ますか?
文字列をアウトライン化して、文字の真ん中を分割して、別々の色で塗りつぶしたいのですが。
そういうメソッドってありますか?今のところ、文字のアウトライン化まではわかりました
図形をブール演算で分割するとかか?もーちょっと色々読めばわかるんじゃないの
http://java.sun.com/j2se/1.4/ja/docs/ja/guide/2d/spec/j2d-geom.fm3.html
どなたかサーバーサイドJAVAの開発環境を比較しているサイトを御存知ありませんか?
比較対象として
Borland JBuilder
IBM WebSphere Studio+VisualAge for Java
富士通 APWORKS
を考えています。

ttp://www.sunicom.co.jp/support/servlet&jsp/1-.htm
上記サイトみたいな所だとベストなのですが。
教えてください。
JAVAでデータベース検索中にアイコンを砂時計にして
画面ロックしたんですが、よい方法を教えてください。
659デフォルトの名無しさん:02/09/19 12:05
ひとつのConnectionから、同時に複数のstatemt resultsetを取得できますか?
複数resuletsetをとりたい場合は、connectionを複数とらないとだめですよね?

connection:statement:resultset=1:1:1?
660660:02/09/19 13:43
すみません、質問させてください…。
下のソースみたいに、fにvectorListの内容を渡そうとしていますが上手くいきません。

ちなみにvectorListはjava.util.Vectorで、
要素としてjava.io.Fileをいくつか入れてあります。

これだとなんとなく、うまくいきました。
  File[] f = new File[vectorList.size()];
  for (int i = 0; i < length; i++){
    f[i] = (File) vectorList.get(i);
  }

これだと2行目でClassCastExceptionになってしまいました…。
  File[] f = new File[vectorList.size()];
  f = (File[]) vectorList.toArray();

ClassCastExceptionの説明も読みましたが、
ObjectはFileにも継承されていると思っていたので、
この例外の意味が良く分かりませんでした。

配列を丸ごと渡せるいい方法があったら、教えて頂けるとうれしいです。
あと、もしよろしければなんですが、何で2番目の方のコードではダメなのかも教えて頂けると幸いです。

長々とすみません、どうかよろしくお願いします。
f = (File[]) vectorList.toArray(f);
あるいは、
File[] f = (File[]) vectorList.toArray(new File[0]);
662660:02/09/19 13:56
>>661
おおお!出来ました!ありがとうございます!!
数日悩んでいたので、辛かったです…。

本当にありがとうございます!
663デフォルトの名無しさん:02/09/19 15:03
数値データをチャートに変換し、Web上に展開するJavaツールで良いものありますか?
価格は10万前後まで。
664よろしくおねがいします:02/09/19 16:05
現在、アプレットとサーブレットの通信をおこなわせるための
テストアプレットを作成しているのですが、
通信部分でエラーが発生しているらしくて、なぜ発生するのか、
またどういう対処を行えばいいかを調べていたのですが
結局対処できなくて悩んでいます。通信内容としましては、
テキストボックスに表記した文字をサーブレット
に送信して、その文字に"OK"という文字を追加して
アプレットに返信するという内容です。
どの部分の書き方が悪いのでしょうか。よろしくお願いします。
<アプレット部分>
import java.applet.*;
import java.applet.Applet;
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import java.net.*;
import java.util.*;
public class tester extends Applet{
Button btnSend;
TextField txtF;
public void init(){
btnSend = new Button("送信");
txtF = new TextField("",8);
setLayout(null);
btnSend.setBounds(1,1,80,50);
txtF.setBounds(100,100,80,50);
add(btnSend);
add(txtF);
btnSend.addActionListener(new sendData());
}
665よろしくおねがいします(続き):02/09/19 16:06
class sendData implements ActionListener{
URL ul;
URLConnection conn;
String str;
Vector vec = new Vector();
public void actionPerformed(ActionEvent ev){
try{
ul = new URL("http://localhost:8088/serv.class");
conn = ul.openConnection();
conn.setDoOutput(true);
conn.setDoInput(true);
DataOutputStream out = new DataOutputStream(conn.getOutputStream());
ObjectInputStream inn = new ObjectInputStream(conn.getInputStream());
out.writeUTF(txtF.getText());
out.flush();
out.close();
vec = (Vector)inn.readObject();
txtF.setText((String)vec.elementAt(0));
}catch(Exception e){
txtF.setText("エラー");
}}}}
666デフォルトの名無しさん:02/09/19 16:06
Xerces-J1.4.3つかっているのですが、

String xml = "<?xml version=\"1.0\" encoding=\"Shift_JIS\"?>\n<root/>";
DOMParser parser = new DOMParser();
InputSource source = new InputSource(new StringReader(XMLの内容));
parser.parse(s);

みたいな感じで、以下の例外が起きてしまいます。ファイル名として解釈している?
どうすればよいでしょう?

SAXParseException: File "<?xml version="1.0" encoding="Shift_JIS"?><root/>" not found.
667よろしくおねがいします(続き):02/09/19 16:06

<サーブレット部分>
import java.io.*;
import java.net.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.util.*;

public class serv extends HttpServlet{
String str;
Vector vec;
public void doPost (HttpServletRequest req , HttpServletResponse res) throws
ServletException,IOException{
res.setContentType("application/octet-stream");
DataInputStream st = new DataInputStream(req.getInputStream());
ObjectOutputStream ou = new ObjectOutputStream(res.getOutputStream());
str = st.readUTF() + "OK";
vec.addElement(str);
st.close();
ou.writeObject(vec);
ou.flush();
ou.close();
}
}

668デフォルトの名無しさん:02/09/19 16:25
ある瞬間にマウスなどでポイントされているメニュ項目をアプリケーションが
知るにはどうしたらいいですか?
メニュー項目が通知すれ
>>669
選択というか、クリックされたときだったらわかるのですが、ポイントするだけでも
なにかイベントって発生するんですか?
>>664-667
なんかソースが長くて読む気しないんだけどさ、例外捕捉のところは
 ・・・
} catch(Exception e) {
 e.printStackTrace();
}

って書いたみたら? 自前で「エラー」とか表示するよりも
128倍くらい有用だと思う。
672デフォルトの名無しさん:02/09/19 17:30
>>670 察しのとおり
MOUSE_ENTERED
MOUSE_MOVED
MOUSE_EXITED
などのイベントが発生する。
http://java.sun.com/products/jdk/1.2/ja/docs/ja/api/java/awt/event/MouseEvent.html#MOUSE_MOVED
つーかこれらが拾えないとお絵描きソフトやドラッグ&ドロップみたいな物の
実装ができないじゃん。
>>672
ありがとう!助かりました!
>ポイントされている
なのにMouseEvent??
Javaに限らずなんですが縦書きのエディタって作ること可能ですか?
横書きの普通のエディタなら作れるのですが・・・
知っている方、知恵を貸してください。お願いします。
676デフォルトの名無しさん:02/09/19 19:11
すいません、ファイルの移動はどうやればいいのですか?

File src = new File("/abc/a.txt"); // a.txt は存在する
File dest = new File("/def/a.txt"); // a.txt は存在しない
src.renameTo(dest);

こんなやりかたでいいのでしょうか?
>>675
http://www.vector.co.jp/magazine/softnews/980917/images/n98091742b.gif
それよりお前は徳島の某社のワープロを知らんのかと小一時間(略
>>676
良いよ。

便乗質問。
dest が存在する場合 IBM JDK 1.3.0 for Linux だとリネームに失敗すんだけど。
ファイル内容の一意性を保つために一時ファイルへ出力→リネームって一般的な方法
だと思うんだが、これできないのか? dest.delete(); src.renameTo(dest); やれって?
679新人:02/09/19 19:32
レベルの低い質問ですいません。

double dblRate = 20 / 500;
lblSeats.setText("全体の割合:" + dblRate);

と打ち、実行すると

全体の割合:0.0

と表示されてしまいます。
正しく小数点を表示させる方法をどなたか教えてくれませんか?
>>679
double dblRate = (double)20 / (double)500;
とか
double dblRate = 20.0 / 500.0;
とか
>>679
整数型÷整数型の結果は小数点以下切り捨ての整数型になる

double dblRate = 20.0 / 500.0;
>>678
なら
dest.renameTo( temp );
src.renameTo( dest );
成功してたら
temp.delete();
失敗してたら
temp.renameTo( dest );
とかやるとか。
>>682
ごめん、その方法や delete() 使うと、dest ファイルがシステム上から
一瞬消えてしまう (大抵こういうのは高負荷時の障害に繋がる)。正直
rename 一発でアトミック性を保ちたい。ここだけ Runtime#exec() で
mv するのも何だかなぁ…。
684よろしくおねがいします:02/09/19 19:59
>>671
ありがとうございます。
試してみます。
開発環境はどれがいいんですか?
アプレットにコピープロテクトかける方法って
ありえますか?原理的に無理っぽいと思うんですが。
>>686
クラスファイルが手に入れば逆コンパイルできるからな。完全には無理だろう。
便乗質問すみません。
jarファイルも逆コンパイルできるんですか?
689686:02/09/19 21:08
>>687
それって、ソースが完全に復元できてしまう、
という事でしょうか。アプレットが流行らない
原因の一つをみた思いがします。
>>688
jar はただの ZIP ファイルにマニフェストファイルが入っただけ。
拡張子を .zip に変えれば WinZIP でも解凍できる。

決定的な対応策としては、パクられたくない処理をサーバサイドで行い
アプレットはただそいつと通信して結果を表示するだけのフロントエンド
UI にすることだろうよ。そもそもクライアントで解読できないものを
クライアントで実行できるわけが無いし。
691688:02/09/19 21:15
>>690
zipだったとは…。
そうだったんですね。ありがとうございます。
>>689
完全には無理だが、普通の Java プログラマが苦労して読める程度には戻せる。
逆コンパイルしたソースをなるべく読みにくくさせるようなツールもあるけど。
てか C でも VB でも同じ話。
693デフォルトの名無しさん:02/09/19 22:04
質問ですよ。
2枚の画像のRGB値をピクセル単位で比較したいのですが、
pixelgrabberで画像を配列に格納するとメモリ上で1枚しか処理できませんよね?
なにか助言して。ホントオ願イ
二つの画像それぞれに PixelBrabber 作れば良いじゃん。
695デフォルトの名無しさん:02/09/19 22:25
PixelGrabber pg = new PixelGrabber(src01,0,0,w,h,pixels,0,w);

というように画像を配列に格納するのに対して

img = createImage(new MemoryImageSource(w,h,pixels,0,w));

というように画像を再構成するけど、画像の幅と高さとピクセル配列・・・って今気づいた。
配列pixelsも用意すればいいんだ。ゴメソ&アリガトー
>>664
サーブレットコンテナが吐くエラーメッセージを見ないと何とも言えませんが
>ul = new URL("http://localhost:8088/serv.class");
このURLは正しいんですよね。web.xmlでservlet-mappingを指定しない場合、URLは
http://localhost:8088/servlet/serv
のようになるはずですが。この場合、serv.classという名前のサーブレットの
クラスファイルがどこかのコンテクストのWEB-INF/classesに存在して、
そのコンテクストはルート直下にマップされていることになります。
>>685
eclipseがいいかな。ttp://www.eclipse.org/
関連スレ http://pc3.2ch.net/test/read.cgi/tech/1023103421/l50
初心者歓迎のこのスレとは違うので、スレ最初のFAQおよびリンク集と、
最近の100スレくらいはしっかり読むように。
しかし今日は質問が多いな。
698697:02/09/19 23:31
しまった。ミスった。
誤)最近の100スレくらいはしっかり読むように。
正)最近の100レスくらいはしっかり読むように。
100スレも読めるか(;´д`)
というよりですね、何で皆さん
こんなに詳しいんですか?
7007雪17歳@700:02/09/20 02:07
Javaが世間に出回り始めてから、もう7年以上経つんだよ。
詳しい人だっていっぱいいるよ〜。
javac  hello.java
でコンパイルしようとするとコマンド又はファイル名が違います。とでます
SET  PASSがおかしいみたいなんですが、どこがおかしいのか
教えて頂けませんでしょうか

Autoexec.batです・・

@ECHO OFF
loadhigh c:\windows\COMMAND\nlsfunc.exe c:\windows\country.sys
SET CLASSPATH=C:\PROGRA~1\PHOTOD~1.0\ADOBEC~1

SET PATH=C:\Perl\bin;C:\jdk1.3.1_04\bin;%PATH%

宜しくお願いいたします。
702701:02/09/20 03:00
全角空白2つにしてしまいましたが半角空白にしてます
あとjavac.exeはあります

厨な質問&連カキすいません
C:\jdk1.3.1_04\bin\javac
では動くわけ?
704701:02/09/20 03:11
>>703
!!今打ったら説明みたいなのが出ました。
んじゃ、ただ
set
って打ってみて、ちゃんと
PATH=...
が正しいかどうかチェック
706701:02/09/20 03:24
>>705
夜遅くにありがとうございます・゚・(ノД`)・゚・。

正しいかどうかはわからないんですが
PATH=........................
CMDLINE=C:\jdk1.3.1_04\bin\javac
と出ました
707701:02/09/20 03:34
TMP=c:\windows\TEMP
TEMP=C:\windows\TEMP
PROMPT=$p$g
winbootdir=C:\WINDOWS
COMSPEC=C:\WINDOWS\COMMAND.COM
CLASSPATH=C:\PROGRA~1\PHOTOD~1.0\ADOBEC~1
PATH=C:\PERL\BIN;C:\WINDOWS;C:\WINDOWS;C:\WINDOWS\COMMAND
windir=C:\WINDOWS
CMDLINE=C:\jdk1.3.1_04\bin\javac
708デフォルトの名無しさん:02/09/20 03:50
コンストラクタのオーバーロードについてご教授ください。
まず社員番号、前期売り上げ、中期売り上げ、後期売り上げを
インスタンス変数に持つ社員クラスを用意。
10人分の売り上げを一覧表示するプログラムを作るとします。
コンストラクタのオーバーロードを使って、
売り上げがない場合は"売り上げなし"と設定します。

この場合社員クラスのコンストラクタの引数の型は
String,int,int,int
String,Sring,int,int
String,int,Sring,int


といった感じで8パターン並べる方法しかないのでしょうか?
コンストラクタで数字か文字列かを判定しようとした場合
ずらずら書く以外なにか方法はないのでしょうか?
>>701
OS再起動してないんじゃないの?
>>701
あと、autoexec.batに
SET CLASSPATH=%CLASSPATH%;.
も追加 (↑最後の「;」と「.」を忘れないように)
>>708
売上なしはint(0)とは違うのか
712701:02/09/20 04:00
>>709
再起動はしました
>>710
さっそくやってみます
713デフォルトの名無しさん:02/09/20 04:18
>>711
確かにそうです・・・。
例が悪すぎました。
この場合は売り上げ0の場合は"売り上げなし"と設定したいのです。
逆に売り上げもすべてString型で受け取ってしまえばはやいのですが・・・
714デフォルトの名無しさん:02/09/20 04:35
>>713
ぶち込む前に文字列にできない?
文字列としてとってこれないの?
715デフォルトの名無しさん:02/09/20 04:47
できるのですが
コンストラクタのオーバーロードを使うというのが前提なので
それだと文字列と数値をコンストラクタで区別できなくなると思いまして・・・
716 ◆k/Ubp.Kg :02/09/20 04:58
俺は社員クラス側でやるよりも、社員クラスを使用する側でやる方がスマートだと思う。気持ち悪いし…。
>>708 >>713
例えが悪いのではなくて設計が悪い。
データはどうやって保持するつもり?"売り上げなし"という文字列か?

データ処理の段階で、
String uriage;
...
if (uriage.equals("売り上げなし") || uriage.equals("売上なし") || uriage.equals("売上げなし")) ...
なんてするつもりか?
「売り上げなし」なんてのは表示(または入力)するときに必要なだけでデータが文字列である必要は無い。

「0は売り上げなしとみなす」とか、Integerにして「nullの場合売り上げなし」とか、
class Uriage{
 private int amount;
 public exists() {...}
}
とか方法はいろいろ。
718 ◆k/Ubp.Kg :02/09/20 05:07
>>717
禿同。
719717:02/09/20 05:07
↑public boolean exists() ねスマソ

public class Uriage {
 publc static Uriage なし = new Uriage(0, false);
public Uriage(int 金額, boolean 売り上げがある){...}
}
Shain shain = new Shain(new Uriage(1000), new Uriage(1500), Uriage.なし);

「売り上げ0 or マイナス」 と 「売り上げなし」を区別したいなら俺ならこんな感じのカスタムクラス作るかな
720デフォルトの名無しさん:02/09/20 05:08
え〜と、敢えてオーバーロードの課題として設計されているのでは?

取り敢えずver1.4から genericity というC++でいうテンプレート
が追加されたみたいだけど、俺、Javaはよくわかんないよ〜
俺もテンプレートみたいなことできるかどうか知りたいので
お願いします>以降の人
721717:02/09/20 05:12
>>720
殿、Genericsは1.5からでございますぞ

課題なら設計云々言ってもしょうがないのかな。
でも、717でもコンストラクタのoverload使ってるからいいんじゃないかな・・・

>>717
publc static final Uriage なし = new Uriage(0, false);
final忘れ。たびたびスマソ
売り上げをintに入れるのか... あふれそ。
723701:02/09/20 05:30
解決しました・・・

原因は・・バックアップの方のautoexec.batをいじってました・・
ごめんなさい・・ほんとにごめんなさい

こんな馬鹿に付き合って頂いた方、本当にありがとうございました

では回線切って首吊ってきます・・
自殺宣言か
725よろしくおねがいします:02/09/20 06:41
>>664 です。
>>696 さん
ご返答ありがとうございます。
まず、今のURLの状態で実行しますと、
java.io.StreamCorruptedException: invalid stream header
というエラーを吐くようです。
696さんがご指摘をされたようにURLを変更してみますと、
java.io.FileNotFoundException: http://localhost:8888/servlet/serv
というエラーが発生するようなので、URL位置は間違っていない
ように思われます。引き続きこちらでも頑張って原因を突き止めます。
726デフォルトの名無しさん:02/09/20 06:53
Java3Dのインストールで質問です
w2kでjavac hoge.javaすると
パッケージ javax.media.j3d は存在しません
と返されます
どうしたら良いのでしょうか?
727デフォルトの名無しさん:02/09/20 06:55
追加
demo/java3d でも同様なのでコードに問題はないようです
おねがいします。
自己レス
インスト場所をいつもと違うところにしてしまっただけでした。
path通したらOKでした
729708:02/09/20 07:18
ご返答ありがとうございます。
売り上げクラスを作るという方法もあるんですね。
mainと社員クラスだけで考えようとしてました。
>>717さん勉強になりました。
730デフォルトの名無しさん:02/09/20 08:47
開発環境はどれがいいんですか?
日本語化されたから Eclipse で
2ちゃん的今年のMostValiableProductsは、日本語化されたeclipseということで。
スペルミスった
win98とmeではset path の記述は違うのですか?
初心者のためのjava講座ではautoexec.batの最後に下記の
二行を追加すればいいと書いてあったのですが、コンパイルできません。
ちなみにmeを使ってます。誰かお助け下され!!
SET PATH=%PATH%;C:\jdk1.3\bin
SET CLASSPATH=%CLASSPATH%;.
>>734
javac コマンドを打ったときに出るメッセージは?

# なんかこういうのって医者の問診に激しく似てると最近おもた
>>734
path通っているか見ろよ。

>path[enter]
>>735さん
コマンドまたはファイル名が正しくありませんです。
頭痛が止まりません・・・。
>>736さん
path = c:\windows;c:\windows\commandで終わってしまいます。
これって、pathは通ってないんですよねぇ?
>>737
path書き換えてからリブートした?
>>738さん
commandでautoexec.batをしています。
>>739
日本語になってねぇし…
子プロセスの中で SET やってるんか?
741734=737=739:02/09/20 10:49
>>738さん
もし時間をいただけるなら、autoexrc.batの内容を見ていただけませんか?
悩める子羊をお助け下さい!
>>741
ぐだぐだと言ってないで、さっさと貼り付けろや
743734=737=739:02/09/20 10:55
>>740さん、すいませんDOSコマンドを言いたかったのです。
これじゃあダメなんでしょうか?
子プロセスの中でSETとは?どゆことですか?
今回はこれかな・・・

C:\jdk1.3\bin\javac.exe
って打ったらなんて出る?
>>742さんぜひにお願いします。
@ECHO OFF
path=c:\windows;c:\windows\command
\hibinv.exe
call \checksr.bat
IF "%config%"=="QUICK" GOTO QUICK
set EXPAND=YES
SET DIRCMD=/O:N
set LglDrv=27 * 26 Z 25 Y 24 X 23 W 22 V 21 U 20 T 19 S 18 R 17 Q 16 P 15
set LglDrv=%LglDrv% O 14 N 13 M 12 L 11 K 10 J 9 I 8 H 7 G 6 F 5 E 4 D 3 C
cls
call setramd.bat %LglDrv%
set temp=c:\
set tmp=c:\
path=%RAMD%:\;a:\;%path%;%CDROM%:\
copy command.com %RAMD%:\ > NUL
set comspec=%RAMD%:\command.com
copy extract.exe %RAMD%:\ > NUL
copy readme.txt %RAMD%:\ > NUL
rem clean up environment variables
set CDPROB=
set CDROM=
set LglDrv=
GOTO QUICK
:QUICK
SET PATH=%PATH%;C:\jdk1.3\bin
SET CLASSPATH=%CLASSPATH%;.
本当に一番最後に追加しています。どこに追加すればいいのですか?
明らかに関係なさそうなトコは省きました。
746734=737=739:02/09/20 11:07
>>744さん
使い方:javac<options><source files>
使用可能なオプションには次のようなものがあります。
.
.
.
と、なにやらコマンドの説明をされてます。

で、再起動はしたのか?
748734=737=739:02/09/20 11:26
一応、変更するたびに再起動してます。
SET PATH=%PATH%;C:\jdk1.3\bin
SET CLASSPATH=%CLASSPATH%;.

これを DOS 窓開くたびに打て
path=c:\windows;c:\windows\command

path=c:\windows;c:\windows\command;C:\jdk1.3\bin
にすればいいんじゃないの
元々 CLASSPATH が設定されていないのなら
> SET CLASSPATH=%CLASSPATH%;.
は必要ないな。

ところで、しっつもーん。WinME で autoexec.bat って有効なん?
OS WInMEだったの?

WinMEではautoexec.batは実行されないから
上でいわれたやつは
環境変数で設定しなきゃダメだね
753名無しさん:02/09/20 13:57
ある文字列をインデックス0番目から「文字」か「数字」かを解析してくれる
メソッドって存在しますか?
J2SE1.3.1_04でJAXPを使おうとしたのですが、クラスライブラリに
javax.xmlとorg.w3c.domが入っていないことに気が付きました。
J2SE1.4にバージョンアップするのは面倒なので、
どこかから上記のクラスだけ落としたいと思います。
こんな体験をしたことがある心優しい方がいましたら、URLを教えてください。
お願いします。
755734=737=739:02/09/20 14:34
みなさん、アリガトウ!!無事にコンパイルに成功しました!
>>735>>752の間でアドバイスしてくださったみなさんに感謝します!!
有難うございました!
>>755
何が原因だったか書いとけ ゴルーア
757734=737=739:02/09/20 15:13
>>756さん、すいません。うれしさで、本を買いに行ってました。
むちゃくちゃしてるうちに、原因がわからなくなってしまいました。
多分、システムツールの環境設定でpathに;c:\jdk1.3\binを追加したのが、
決定打だったのでは?と思ってます。
みなさんのアドバイスのおかげです!再度ありがとうございました。
Javaアプリケーションを、
javaコマンドじゃなくて、
exeファイル(?)みたいに実行できないのでしょうか?
>>753
よく分からんけど、
Character.isDigit(str.charAt(0));
とか、そーゆー事でなくて?
>>758
シェルスクリプトで起動用スクリプト書くとか、
起動用の実行ファイル作るとか。
Windowsでダブルクリックで起動したいだけなら jar にするとか、
ネイティブコンパイラ使うとか。
761デフォルトの名無しさん:02/09/20 16:42
あるディレクトリに複数のjarファイルがあるとします。
その場合全てのファイルを使いたい場合はクラスパスはどう書けばいいのでしょうか?

/usr/local/lib/にjarがあるとして、

java -classpath .:/usr/local/lib/ test

としてもNoClassDefExceptionが出てしまいます。
jar って一個一個指定しなきゃいけないのでは?
java -classpath .:/usr/local/lib/a.jar:/usr/local/lib/b.jar test
とか…
java -classpath .:/usr/local/lib/*.jar test
とかやれば ちゃんと展開してくれるかも?
>>762
そうなんですよ。

java -classpath .:/usr/local/lib/a.jar:/usr/local/lib/b.jar test

では成功します。

java -classpath .:/usr/local/lib/*.jar test

はだめでした。

Apache Soapのクライアントを書いてるんですがかなりの数のjarを
指定してやらなければならず何かいい方法が無いかと相談させて
いただきました。
#Makefile書け

JAVAC=javac
CLASSPATH=.:/usr/local/lib/a.jar:/usr/local/lib/b.jar

all:test

test:test.java
$(JAVAC) -classpath $(CLASSPATH) test.java
#↑タブ文字
>>764
CLASSPATH=.:/usr/local/lib/a.jar:/usr/local/lib/b.jar:/usr/local/lib/a.jar:/usr/local/lib/c.jarr:/usr/local/lib/a.jar:/usr/local/lib/e.jar........

が激しく面倒だと言うのが彼の言い分だと思われ。
>>764
Makefileって… せめて Antにしてくれ。
>>763
必要な jar をエクステンションディレクトリに詰め込むとか、
CLASSPATH に設定するのはダメなんじゃ?

外部からエクステンションディレクトリって設定できなかったっけ?
なんかあったような気もするんだけど、気のせいかも…
#ならこうしろ
echo /bin/*.exe | perl -ne ' = ho; =~ s/\s/:/g; print ;' /usr/local/lib/*.jar > Makefile
#まちがえた
#逝ってくる
echo /usr/local/lib/*.jar | perl -ne ' = ho; =~ s/\s/:/g; print ;' > Makefile
#そろそろ氏のう...
echo /usr/local/lib/*.jar | perl -ne '$s="$_"; $s =~ s/\s/:/g; print $s;' > Makefile
771753:02/09/20 17:30
>>759
おおー!それです。ありがとうございました。
>>763
jar cvf /usr/local/lib/allJar.jar /usr/local/lib/*.jar
javac -classpath /usr/local/lib/allJar.jar test.java
#遅いけど(w
>>772 それ、本当にやってみたのか?
>>773
サイズが指数関数的に増加する罠
つーかjarにjar入れても動かんだろ。
シュアウェアとフリーのソフトを作ってます。
使える言語は C++, C, アセンブラ です。

javaは一応勉強しましたが
基礎的なマニュアルを読んだ感想だと
1:長い 2:遅い 3:面倒くさい でした。
(↑ごめんなさい…)

移植性とか安定性?の他に
java 独自の機能や有効性があったら教えてください。
777デフォルトの名無しさん:02/09/20 19:06
>>776
別に java を使わなくてもいいんじゃない?
>>761
echo export CLASSPATH=$CLASSPATH:`find ~/jardir/*.jar | tr '\n' ':'`
find -name '*.jar' ~/jardir
の方がいい気がする
CLASSPATHの質問をしたものです。
スクリプトで生成するって言うのもUNIX的でおもしろいですね。
とりあえずそれで試してみます。

どこのサンプル読んでもクラスパスを設定しろって書いてあるのが気になりますが。
みんな解凍してるのか?それともソースコード入れたら解凍済みのものが入って
るんだろうか・・・。
>>780 解凍って何の話だ?
あれだろ、アプリのjarにライブラリのclassを全部ぶっこむって事だろ

find ~/jardir -name '*.jar' -printf ';%f'
find ~/jardir -name '*.jar' -printf ';%p'
こーか
784デフォルトの名無しさん:02/09/20 21:46
>>776
・プラットフォーム非依存
・オープン
・ガベージコレクション
OSやストレージに関する部分が抽象化され標準化されているから
開発者がひたすらビジネスロジックの構築に注力できるのが強みかな。
ガベージコレクション、これ曲者。
何も意識せずにビジネスロジックの構築に注力すると、
オブジェクト参照がどうなっているのかが疎かになり、
簡単にOutOfMemoryErrorが発生する。
それはある。ま当然だが、よーするにヘボプログラマでも
上質なコードが書ける魔法の言語ってわけではない。
>>785
別にガベージコレクションがなくてもOutOfMemoryErrorは発生するけどな。
>>785
曲者っていうより単なるバグだろ
>ガベージコレクションがなくてもOutOfMemoryErrorは発生するけどな
????何が言いたいのか????

>>664
サーブレットとストリーム経由で通信していますが、この場合送信側は
ヘッダを自分で生成し、受信側はヘッダを自分で解析する必要があるのでは
ないでしょうか?"HTTP GET"なんたらとかね。
ふつうサーブレットの枠組みでやっている分には意識しないことですけど。
Javaに限ったことではないのですが、縦書きのエディタの作り方を教えて下さい。
(そういうツールがあるのは知ってますが、自作したいんです。)
横書きのエディタなら作れるんですが、縦にするにはどうしたらいいんでしょうか。
教えて君で申し訳ありませんが、よろしくお願いします
またおまえか。漠然としすぎ。
JavaのSwingでやるなら、TextComponentを継承して表示を適当に
どうのこうのするんじゃないの?調べれば?
とか、漠然とした回答しか出てこんと思われ

675 :デフォルトの名無しさん :02/09/19 19:01
Javaに限らずなんですが縦書きのエディタって作ること可能ですか?
横書きの普通のエディタなら作れるのですが・・・
知っている方、知恵を貸してください。お願いします。
793 ◆k/Ubp.Kg :02/09/21 03:55
>>788
バグ?コードが糞だから、じゃないの?オブジェクト参照が把握できない汚いコード書くから。
>>786の言う通り。

>>789
OutOfMemoryErrorはGCのせいじゃないだろ、ってコトかと思われ。
web.xmlを簡単に設定できるツールとかご存知ないですか?
サーブレットが大量になってくると、手書きはきついっス。
795 ◆k/Ubp.Kg :02/09/21 05:09
>>794
漏れも面倒臭いので、自作のスクリプトを書きますた。そういうツールがあったらいいよね。
796666:02/09/21 05:46
×parser.parse(s); ←文字列なのでファイル名として解釈される
○parser.parse(source);

こんなことで漏れは徹夜三昧の日々を送っていたのか。。。

同じようなことで悩んでいる外人いてワラタ。↓
ttp://saloon.javaranch.com/cgi-bin/ubb/ultimatebb.cgi?ubb=get_topic&f=31&t=001523
いや、こいつのおかげで気づいたんだから、感謝せねば。。。さて寝るか。
>>791
ヨタ話だが、横書きエディタがあるんなら、描画を90度回転するGraphicsをかますと
お手軽縦書きエディタになるとか。またはGraphics2Dあたりで変形サポートしてなかったっけ。
初心者の頃は「GCあるから楽ちん」とか思いつつstaticなVectorにオブジェクトを追加しまくってたっけ。
あとJFileChooserのメモリリークは1.3.1でも直ってなかったなあ。さっさと直せよ、SUN。
>>797
横書きエディタっても、JTextArea 貼り付けて終わり、とか
その程度のものしか作れてないのでは?

Graphics.drawString() とかで全部自前で描画するぐらい
出来ているんであれば質問せんでも自力で解決してると思うし
>>799
まあそう思うがその前提でこんな感じ↓。ほとんどジョークだが。

public class VTextArea extends JTextArea {
 protected void paintComponent(Graphics g) {
  Dimension size = getSize();
  ((Graphics2D)g).setTransform(AffineTransform.getRotateInstance(
   Math.PI/2, size.width/2, size.height/2));
  super.paintComponent(g);
 }
}

漏れもWYSIWYGの簡易HTMLエディタ的な物を作ったときあって、javax.swing.textを使うかどうか迷った。
結局全部自前で作ったけど、そこらへん使ったことのある香具師の話は聞いてみたい。
>>793
>OutOfMemoryErrorはGCのせいじゃないだろ、ってコトかと思われ。
そういうことね。

うちの会社の研修(といっても外部の講師)が糞なのか、
世間一般的に糞テキストしかないのか、あまりメモリを意識させた
コーディングって見かけない。(あってもI/OやDBの開放程度か)

GCが自動的に不必要なものを開放してくれるってのをあんまり強調しないほうがいいのかもね。
802791:02/09/21 13:28
792さん、797さん、799さん、800さんアドバイスありがとうございました。
おっしゃるとおり、JTextAreaを使ったものです。
さっそく試してみます。本当にありがとうございました。
803よろしくおねがいします(続き):02/09/21 14:01
>>790 さん
返答ありがとうございます。
早速ヘッダを解釈する部分の関数を作成して
ためさせていただきます。
結果書き込みはもうしばらくお待ち下さい。
やる気が出てきました。ありがとうございます。
804776:02/09/21 14:13
ご教授、ありがとうございました
805デフォルトの名無しさん:02/09/21 15:02
パッケージ名に org.domain.productname. ...

みたいな名称付けるのは、死守しなきゃならんもんかな。junit とかは別に、
そんなの関係なしにつけていて、なおかつみんな便利に使えているんだから、
俺は気にしないでいこうかと思ってるんだけど。
公に晒さなければいいんじゃないの
そのコードが使われる範囲(ドメイン)の中で
間仕切りできていればいいわけで
>>805
パッケージ名が衝突しない保証がある、とか
パッケージ名が衝突しても大丈夫、とか
パッケージ名が衝突した時の事なんて考えてられっか、とか
そーゆー態度ならば好きにすればよいのでは?

別に同意を得るような事でもなし、
同意を得るんなら、パッケージ名くらい
晒してくれんと何とも言えんし。
厨房がやる分には害が無いけど、影響力のある人達が
俺様パッケージ名ばっかり使うと困るよ
指定スレッドに新規書き込みがあった場合、
携帯にメールで知らせてくれるツールありませんか?
えらく重要なスレッドだな(ワラ
それくらい自分で作れ
大学の合格通知代行しますみたいな商売でもやれ
813名無しです。:02/09/21 21:15
import java.applet.Applet;
import java.awt.*;
import java.awt.event.*;

public class rel extends Applet {
public void init() {
Choice cicShopping;
int intSum;

cicShopping = new Choice();
cicShopping.addItem("ボールペン ");
cicShopping.addItem("万 年 筆 ");
cicShopping.addItem("シャープペン");
add(cicShopping);
}
}

上の状態で、
"ボールペン "を選んだ時、 intSum = intSum + 100;
"万 年 筆 "を選んだ時、 intSum = intSum + 300;
"シャープペン"を選んだ時、 intSum = intSum + 200;
と言う機能を追加したいのですが、どうしたらよいでしょうか。
どなたか教えてくださいませんか。
814デフォルトの名無しさん:02/09/21 21:18
jre 1.3から1.4になってプログラム実行速度が速くなるの?
>>814
ケースバイケースだ。自分で調べろ。
816 ◆k/Ubp.Kg :02/09/21 22:05
>>805
もうそんなに死守する必要はない…ってどっかで見た記憶が。ソースは忘れた、すまそ。
一応、守っておいたらいいんじゃない?いつ、どんな理由でそのコードが流出するとも限らないんだから。
817名無しです。:02/09/21 22:54
818遅レス:02/09/21 23:05
>>785
そういうアホが人から金を取るプログラムなんか組むな、ということなんだが(藁
819デフォルトの名無しさん:02/09/21 23:09
すげえ恥ずかしい質問だけど引数って何?戻り値って何?
教えて。俺、超馬鹿だから本読んでわからなかった。
引数:関数に渡すデータ
戻り値:関数の出力データ

X=F(Y)なら、Yが引数、Xが戻り値。
>>818
サーバーサイドなJavaが流行ってるが、そこに投入される人間ときたら・・・
前のプロジェクトでもJavaやってましたって言ってるが、そいつの作るコード最悪。
まだC++乗換組みのほうがメモリの開放を気にしてくれる。
>>820
数学嫌いだった人間?

>X=F(Y)

y=f(x)
y=F(x)
Y=F(X)
........
>>821
いくらなんでも、サーブレットはオブジェクトのスコープ
(ライフサイクル)くらい分かってないと、まともなコード
かけないはずだが・・・

サーブレットでは基本的にstatic禁止していいはず。
それさえしとけば、最悪オブジェクト越しに確保された外部
リソースであってもGCがいつかは解放してくれるはずさ。
824デフォルトの名無しさん:02/09/22 04:54
UNICODE文字列からEUC文字列にするにはどうしたらよいのでしょうか?
s = new String(s.getBytes("iso-8859-1"), "EUC_JP");
としてもうまくいきません
SJISの場合は
s = new String(s.getBytes("iso-8859-1"), "Shift_JIS");
でいけたのですが・・
>>824
Java の String は Unicode しか扱えません。「EUC のバイト配列」なら取り出すことが出来ます。

byte[] euc = s.getBytes("EUC_JP");
>>824
まず、自分のやろうとしてることを誤解している。
そのイディオムは、間違った文字コード変換を矯正してるだけ。
つまり、EUCのバイト列を間違ってラテン文字として読み込んでしまったのを、
バイト列に戻して、改めて「これはEUCのバイト列だぞ」って宣言して
EUC→Unicode変換して、正しいJavaの文字列(Unicode)にしてるんだよ。

http://www.iana.org/assignments/character-sets
Name: Shift_JIS (preferred MIME name)

Alias: MS_Kanji
Alias: csShiftJIS

Name: Extended_UNIX_Code_Packed_Format_for_Japanese

Alias: csEUCPkdFmtJapanese
Alias: EUC-JP (preferred MIME name)
すんません。マジです。
javascriptは相当やってんですけど、javaもやってみたいんですけど、
javaとかなり共通性があるんですか。
[初心者]Java質問[大歓迎]だからいいでしょ。
>>827
JavaScriptのことは忘れろ
>>828
そですか。せっかく覚えたから使えるかと思ったのになぁ。
じゃ、初心者本から始めますタイ。
>>829
ま忘れた方がいい。全然違う。
appletなら分かるんだが・・・
>>830
appletっていう部分では、役立たないこともないってことですね。
コード見ると、かなり似てることは似てるので・・・
まあ、やってみるに越したことないですね。2年位前Jbuilderだったっけ
雑誌付録インストールしたけど、忙しくなってそのまま。っていうか
そのマシンは、8年前ので使い物にならなくなってる。
832824:02/09/22 15:57
825,826
レスありがとうございます。
しかしまだしっくり理解していないかも知れませんが・・・
UnicodeのStringで
String s = "Insert INTO MYTABLE(mycolumn) VALUES('テスト')";
このような文字列を保持していて
それをポストグレスDB(EUC必須)に書き込むときは
byte[] euc = s.getBytes("EUC_JP");
としてeucを書き込めばいいのでしょうか?
>>832
それでOK!
>>832
そんなアホみたいなことするなよ。JDBCドライバが変換してくれる
835デフォルトの名無しさん:02/09/22 19:00
IRCのクライアントをJavaで書いてるんですが、
//接続用のメッセージを送信
//書き込み省略

//接続歓迎メッセージの受信
 InputStreamReader isr = new InputStreamReader(this.connection.getInputStream());
  while ((c = isr.read()) != -1) {
  System.out.print((char)c);
 }
としてローカルでテストしてみると、メッセージが帰ってきたあとのisr.read()で固まります。
なんかアプローチの方法と自分自身がまちがってるような気がしてきたので質問させてください。

ど う す れ ば い い の で す か ?
>>823
ツーか、いまだに大量のサーブレットかいてるのか?

普通、サーブレットから呼ばれるBeanとか単純なビジネスロジックくらいしか書かないんじゃないの?
>>835
-1 は接続が切れるまでこないよ。
838デフォルトの名無しさん:02/09/22 19:15
Java重すぎ、使い物にならねぇーYO
839童貞くんw:02/09/22 19:16
セクースのプログラムおしえてください
840デフォルトの名無しさん:02/09/22 19:17
>>385
> InputStreamReader isr

大文字だけ取って変数名にするのはヤメレ。
streamReader とかがおすすめ。
841デフォルトの名無しさん:02/09/22 19:17
JavaはGUIもネットワークプログラミングも簡単で出来て素晴らしいけど・・・
重い。使う側にとって一番重要な部分が・・・アイタタ
>>840
プライベートみたいだし変数名なんて書く人の好みでいいじゃん。
それとも 840 == 835 で自問自答してるのか?
843デフォルトの名無しさん:02/09/22 19:21
初歩的な質問なのですが、
たとえば、1/3というのは0.333333.....とずっと続くのですが、
これは最後はjavaは四捨五入するのでしょうか?
ちょっと試したのですがわかりませんでした

double a,b;
a = 1/3.0;
b = a*1000000;

としても、ずっと3が続いているのでわかりませんでした。
>>843
メモリ上では十進数じゃないから意味なし
845843:02/09/22 19:29
>>844
そうなのですか?ということはまるめ誤差は発生しないのでしょうか?
846デフォルトの名無しさん:02/09/22 19:33
>>843-845
あえて言うならdoubleの有効桁数までは保持している。
doubleは2進数で値を保持していて、10進表現に直したときに0.3333... が続くだけ。
もし、最初から最後まで10進数で計算(誤差も自分で制御)したいならBigDecimal使うよろし
848843:02/09/22 19:40
>>847
丁寧な解説ありがとうございます。
保持しているのが2進数であっても、doubleで扱える(小数)桁数には限度
がありますよね?それは、進数表記はどれであったにしろ
あふれた分はどうなってしまうのでしょうか?
>>848
847はいい加減な説明だから、正確に知りたければ計算機の教科書を見ると良い。
Javaに限った話ではないし、探せばWeb上にもあると思う。
簡単に言えば規格に沿った形で丸められる。
850843:02/09/22 19:48
>>849
そうなんです。そのまるめの誤差なんですが、
結局 四捨五入か 切り上げか 切捨てかを知りたいんです。
やはり四捨五入でよいでしょうか?
>>850
だから2進数の基本的なところを勉強しろって。
「四捨五入」なんてのは10進数に対してしか意味を持たない。
今 jdk1.4.1 fcs で試したんだけど
内部クラスを Class.forName() するとき
Class.forName( "package.outer.inner" ); //ClassNotFoundExceptionを投げる
Class.forName( "package.outer$inner" ); //動作する
ってな感じになってるんだけど、
これって仕様で決まってるのかな?
>>850
2進数を理解していないね。
2進数で桁が有限である小数(doubleもこれ)でも、
10進数にすれば循環小数になるんだよ。
だから、10進数の意味で「最後の桁」は存在しない。
ただ、打ち切りだから、真の値よりも小さいだろうとは
想像できるけど、最後の方の桁はゴチャゴチャになってしまう
ん、なんか勘違いしてたかな。
「打ち切りだから」ってのは実際の割り算のアルゴリズムが
わからなければ言えないな。そこまでは知らん。
「浮動小数点数」をキーワードに勉強してみれ
参考:
1/3 (10進数) = 0.0101010101... (2進数)
>>853
>2進数で桁が有限である小数(doubleもこれ)でも、
>10進数にすれば循環小数になるんだよ。
2進数で循環小数でないならば、
10進数でも循環小数になりません。
>>856 スマソ、逆だった。。鬱
858843:02/09/22 20:10
みなさん、ありがとうございます。
gaussの消去により、連立一次方程式を解く数値計算のプログラムを書くのですが、
注意すべきてんがあるかなとおもっていたのです。

うまく出るかな。それとも許容範囲としてある数以下は削除したほうが
いいかなあ

まるめにより小さくなるけど、詳しくはわからないということですね
>>852
Inner.class.getName() → "Outer$Inner"
>>859
いや、仕様で明文化されているものがあれば知りたいだけだから。
>>858
除算は極力最後。
差の絶対値が大きい数同士の演算に注意。
>>858
浮動小数点数で精度保証するのは難しいんじゃないかな
863843:02/09/22 20:30
そうですよねぇ・・・
>>863
吐き出し方は式(行ベクトル?)を選ぶ順番に
自由度があるから
>>861に留意してなるべく誤差が少なくなる順に適宜入れ替えて計算すればOK
つーかまずはそれなりの答えのでる版を先につくれ。

いっぺんに欲張るとろくなことは無いぞ。
865843:02/09/22 21:35
>>864
了解しました!
ありがとうございます!
ピボットを選ぶときに、大きいものを選ぶようにしろってことですよね?
>>837
そうだったのですか。勉強になります。
結局、スレッドを使って接続が切れるまで待ち続けることにしますた。
InputとOutputのループが同時に回っていれば、
たぶんだいじょうぶかと思われまする。
867866:02/09/23 10:30
スレッドを使っての出力と、チャンネルへのJOINまで成功しました。
ただ、IRC側から送られてくるデータをStringに取ってきて出力しているのですが、
「あいう」が送られてきたとき、「$B$"(B$B$$(B$B$&(B」となってStringに格納されます。
このままじゃ日本語が読めません。

質問は2つです。
1)デコードが必要だと思うのですが、そもそも何形式でエンコードされているのでしょうか?
2)Javaのクラスライブラリを使うだけで、これをデコードする方法はあるのでしょうか?
教えてください。お願いします。
>>867
元スレに参考サイト書いといたぞ
Javaなら、Stringクラスのコンストラクタ(かvalueOf)とgetBytesあたりで
もしESCコードが抜けてないなら、JISAutoDetectの指定も使えるかも
>>867
"JIS" とか "SJIS" とか "EUC_JP" とか全部試せ。
なんか JIS っぽいような気がするけど。
詳しくは RFC とか プロトコルの仕様書に書いてあるんじゃない?
871866:02/09/23 10:46
すごく参考になりました。
ありがとうございます。
872極秘情報:02/09/23 10:48
getByte()は遅いのでInputStreamReaderとBufferedReader使いましょう
873866:02/09/23 10:50
いま"JISAutoDetect"で試してます。ircd接続までの時間が長いです。
874866:02/09/23 10:54
BufferedReader br = new BufferedReader(new InputStreamReader(uc.getInputStream(), "JISAutoDetect"));
IrcInputThread iit = new IrcInputThread();
iit.setBufferedReader(br);
iit.run();
:[email protected] PRIVMSG #test : 出力できました。おせわになりました。
"JISAutoDetect" は一見便利だけど
文字コード確定するまで無反応になってしまう罠。
チャットには向かないと思う。
>>875
"JIS"でもイケました。ということは、こっちのほうがいいですね。
なぁ、アプレットでファイルの書き込みはできないが読み込みはできるよな?
なんかセキュリティエラーが出るねん。
>>877

                 で き ま せ ん
>>877
そんな事できたら個人情報漏れまくりじゃん
880でふでふ:02/09/23 19:36
Javaのプログラム中でテキストファイルの差分取りたいので、diffのライブラリがほしいです。
ない?
881デフォルトの名無しさん:02/09/23 21:42
すげえ基本的な質問なんだけど、どうしてJDK/JREに含まれてる標準クラス
を使う場合は、CLASSPATHの設定が不要なの? javaはどうやって標準クラス
のある場所を知ることができるの?
>>881
WIndowsならレジストリから取得していると思ったがどうか
883デフォルトの名無しさん:02/09/23 22:12
>>882
違うよーだ。
884デフォルトの名無しさん:02/09/23 22:15
お前ら、こんな単純な質問にさえ答えられねえのか?
885デフォルトの名無しさん:02/09/23 22:20
環境変数JAVA_HOMEって、設定しなくても動くしなあ...
どうして??? オレも知りたい
全フォルダを検索してるのですよ。
j2sdk1.4.0をインストールしたんですが,
このあとにAutoexec.batの中にpath= C:\jdk1.4.0\bin;%PATH%;c:\toolsを書きこめとあるんですが,
普通に1番下に書きこめばいいんでしょうか?
>>881-885 J2SEのsrc.zipを展開するとラウンチャのソース入っているよ。
Win32だと java_md.c から GetModuleFileName してる。
BufferReaderで読み込んだファイルを別のjavaでできたプログラムに送るには
どうすればよいでしょうか?
readLine()で一行ずつStringにして送ると言う方法は知っているのですが、
都合でできれば、ファイルのまま送りたいと考えています。
>>888
ちゃんとソース見てないな。
.exe ファイルの場所を調べた後、見つからなければレジストリを見る。2段階だ。
>>881
JDK/JREの相対パスから辿るんじゃねえの?ライブラリパスのフォルダ名
変えてやってみれば?
892デフォルトの名無しさん:02/09/23 23:21
javaでのイベント駆動方式プログラミングに関する質問です
どなたか お答えできる方がいたら教えて下さい

ぶっちゃけた話 java.util.EventObject や java.utilのEventListener を継承(実装)して、
独自のイベントとリスナーによるオブジェクト指向プログラムを組みたいんです。
ですが EventListenerインターフェースの方が API仕様書を見ても何のメソッドも描かれてなくて・・・
どちらかというと AWTEventListener の方が最上級のスーパークラスとしては「それっぽい」ように思われるのですが・・
やはりawtを使うしかないんですかね? CUIは捨てろってことですか?
893 :02/09/23 23:22
j2sdk1.4.0をインストールしたんですが,
このあとにAutoexec.batの中にpath= C:\jdk1.4.0\bin;%PATH%;c:\toolsを書きこめとあるんですが,
普通に1番下に書きこめばいいんでしょうか?
>>889
よく分からんが 別のJavaアプリから
そのファイルを読み込めばよいだけでは?
>>892
public interface CUIEventListener extends EventListener{
 public abstract void eventDispatched(CUIEvent event);
}
とか やれば良いではないか。
>>893
ネタにマジレスすると、OS ぐらい書けや ゴルーーーア
java.lang.Cloneableやjava.rmi.Remoteと同じく
単なる印付けのinterfaceなんでしょ<java.util.EventListener

interfaceと言っても必ずしも実装すべきメソッドがあるわけではない
言い方は不正確だが、実行時の型を規定するものなだけだから
898892:02/09/23 23:44
java内部でのイベントの発生、キャッチの仕組み自体 良くわかってないってのもあるのですが・・・

>>895さんのようにやると プログラム内でイベント(CUIEvent event)が発生、あるいは意図的に発生させた場合
リスナー(CUIEventListene)は自動で呼び出されるのでしょうか?
リスナー登録の仕方などもひょっとすると変わってくるような気がしなくもないのですが
>>897
Cloneable は public Object clone() を期待されたりとかあるので
単なるシルシってのとは ちと違う気もする。
>>898
…AWTEvent を外部入力によらずにプログラム内部で「発生」させて
自動でリスナーが呼び出されるか試せば?
901892:02/09/23 23:51
>>985-

どうもありがとうございます 参考になりました
確かに実際にやってみないとどうにもなりませんね・・・がんばってみます
902 :02/09/24 00:00
>>896
OSは,win98です。
j2sdk1.4.0のフォルダは,Cドライブにあります
903でふでふ:02/09/24 02:54
で、diffライブラリはないのかね。
>>903 これは?多分、これでできると思うけど。
http://csdl.ics.hawaii.edu/Tools/LOCC/dist/api/csdl/locc/measures/java/javaline/JavaDiff.html

どの程度のモノが欲しいのか分からないけど、簡単なモノなら自作するという手もあり。Runtime#execでdiff呼ぶってのも…(笑)。
Javaと松茸と先行者の関係を教えてください
javacコマンドを使えるようにするためには,どうすればいいのでしょうか?

OSは,win98です
907デフォルトの名無しさん:02/09/24 07:14
>>906
sunのJavaサイトに行って、j2sdkをダウンロードしる!
http://java.sun.com/
…ってことを訊きたかったのかな?
>>907 句読点の打ち方からみるに、906=902 だと思うけどな。
910デフォルトの名無しさん:02/09/24 07:33
911でふでふ:02/09/24 07:45
コマンドライン版diffはここでみつけたんだけどね。
http://www.bmsi.com/java/
http://www.darwinsys.com/freeware/
あと、おおげさなライブラリがここにあった。
http://www.suigeneris.org/jrcs/

>>904のが使うの簡単そう。ありがとう
912デフォルトの名無しさん:02/09/24 11:39
servletを作ろうとしていますが、ソースをコンパイルすると
“javax.servlet.は存在しません”
と言われてエラーになります。
なんかの雑誌についてたサンプルソース(「Hello」と表示させる)
でさえコンパイルできないので、
そもそもj2sdkのインストールがうまくいってないのかとも思いましたが、
どのようにチェックすればよいのかわかりません。

環境はwinXP+j2sdk1.4.1で、
アプレットはコンパイルできてます。
>>912
Tomcat4インストールしとけ。zip版がお勧め
914デフォルトの名無しさん:02/09/24 12:06
>>912
ServletライブラリはSDKには標準ではついてこない。
雑誌のその特集のはじめのほうで説明しているであろう設定方法を読んでみれ。
たぶんtomcatをインストールしてクラスパスを通せとか書いてあるだろう。
http://www.ingrid.org/jajakarta/tomcat/
Java開発ツールは何がよいでつか(・∀・)?
本格的 → JBuilderかEclipse
HelloWorld → Vectorで探す
917デフォルトの名無しさん:02/09/24 15:57
HTMLに組み込まれたパラメータからアプレットにデータを渡すとき、
アプレットはgetparamでその値を取得できますよね?。
ところで、アプレットから他のページ(アプレットの有るページ)
にジャンプさせて、ついでにジャンプする前のアプレットが保持していた
変数データも一緒に転送するってことは可能ですか?。
そういうことが詳しく書かれたサイトなどが在ればお教え願いたいのですが・・。
いろんなサイトを回ってみたのですが、自分が望む情報が
見つけられなかったので、知っておられる方よろしくお願いします。
クッキー?
919:02/09/24 16:36
>>915
Webアプリ & タダ -> SunONE Studio(Forte) + Tomcat4.0.4
getAppletContext().showDocument("http://www.xyz.com/page.html?hoge=" + value);
921まむまむ:02/09/24 18:33
サーブレットの実行に伴って、指定したURLを新規ブラウザ(ユーザーがデフォルトで指定しているブラウザ)を立ち上げて実行させる方法をご存知の方、いらっしゃいませんか?
922デフォルトの名無しさん:02/09/24 20:26
Object の生成はコストがかかる(生成も GC するときも)というのは分かりました。

では、int[] array = new int[2], というような配列を生成するのも、あまり膨大な数
(膨大というのは、クライアントアプリで、一秒間に50回くらい) やるのはよろしくない
のでしょうか。
>>921
何がしたいのかわかり増せん。
924デフォルトの名無しさん:02/09/24 21:01
JAVAからVBのプログラムをスレッドで実行するにはどのようにやれば良いのでしょうか。
925デフォルトの名無しさん:02/09/24 21:08
JAVAで指定した幅に右詰めに値を出力するにはどうすればよいのですか?
Cでは 
 printf("%10d",a);
などと書けば、よかったと思いましたが。
926デフォルトの名無しさん:02/09/24 21:09
JDKとかって色々種類ありますよね?
どれダウンロードすればいいんですか?
英語でまったくわけわからないんですが(英語がわからないならヤメロって言われるの覚悟してます)。
もしよければダウンロードページのアドレスも付けて教えてください。
>>921
それはHTMLやJavaScriptですることだ。よそで質問しれ。
>>922
一秒間に50回だけ、なら大した事無いと思うけど…
(iアプリとかのpoorな環境の場合は知らん)
心配だったら配列使いまわすタイプと生成するタイプを
作って比べてみたら?
>>926
http://java.sun.com/j2se/1.4.1/ja/index.html
とりあえず最新の jdk1.4.1 fcs をすすめとく
>>922
作ってすぐ廃棄なら、世代別GCが頑張ってくれるさ。気にすんな。
931912:02/09/24 21:45
>>913,914
ありがとうございます。
あれからTomcat4入れてみたのですが、
いまだに状況は改善されていません。
インストールや設定に悪戦苦闘しているというのもありますが。。。
もう少しがんばってみます。

apacheもうまいこと連動してくれない。。。
932926:02/09/24 21:48
>>929
すまん、そこまで自力で行ったのだが、次のhttp://java.sun.com/j2se/1.4.1/ja/download.htmlでどれを選択するのか迷っています
次はどれを選択すればいいの?
>>931
Tomcat4.0.x なら、common\lib\servlet.jarをクラスパスに加えるとよいかと。
>>932
Windows(各国語)のSDK。ついでに日本語版 J2SE 1.4.0 ドキュメントもDLしとけ。
935デフォルトの名無しさん:02/09/24 22:08
>>934
やっとダウンロードできました。
ありがとうございました。
>>925 DecimalFormat
937デフォルトの名無しさん:02/09/24 22:59
便乗だけど、
printf("%-10.4s", "あああ");
の場合は?
問題は2つあるんだけども。
文字幅を考慮しろってか
短くやるにはgetBytesとarraycopyくらいしか
940デフォルトの名無しさん:02/09/24 23:34
java.util.ResourceBundle#getStringArray() を使うときの propertiesファイルの書き方を教えてください

もしかしてオブジェクトの文字列表現とかですか?
>>940
.propertiesファイルでは、PropertyResourceBundle(値はすべてString)の
インスタンスになるので、無理。
任意のクラスを直接持たせたければ、ResourceBundleを継承したカスタムクラスを
書くしかないが、アフォらしいから、普通はカンマ区切りか何かにして書いて、
読み込んでから分割するとかするもんだと思うが
942937:02/09/24 23:48
問題は2つ。
1つめは、この場合には後ろに0x20がつかなければならない。
2つめは、文字幅。
ちなみに.NETは文字幅は考慮されない。

FontMetrics使って実現はしているんだけど、
ほかの人はどうしてるのかと思って
943940:02/09/25 00:22
>941
ありがとうございます
SDK付属デモのNotepadでスペース区切り+StringTokenizer使ってたので、それでやってみます

しかし無理だったとは・・・
944デフォルトの名無しさん:02/09/25 01:29
Javaアプレットを印刷しようとしてもカラーにならないんですがどうしたらいいですか?
画面キャプ or デジカメ
>>945
やってみます。
ありがとうございます。
947947:02/09/25 02:51
いまいちオーバーライドの重要性がわからないんですけど・・・
>>947
使ってりゃ分かるさ
949デフォルトの名無しさん:02/09/25 03:36
>>947 仕様です
950949:02/09/25 03:48
あ、分からないのが仕様って意味じゃなくて、
オーバーライドを使わないと何もできないような
言語仕様だということです。
951デフォルトの名無しさん:02/09/25 05:00
Javaでゲーム作るのにUMLの知識ははどのくらい必要ですか?
952デフォルトの名無しさん:02/09/25 06:30
java2 SDK Standard Edition V1.3.1_04
java2 SDK SE v1.4.0_01
の2つがインストールされているのですが、
(そのうち1.3は携帯プログラムに使用中)
autoexec.batにはSET PATH=C:\j2sdk1.3.1_04\bin
と設定してあるのですが、
コマンドまたはファイルが正しくありませんと表示されてしまいコンパイルできません。なんでなのでしょうか?
>>952
で、インストールしてあるパスはあえて秘密なの?
954917:02/09/25 09:24
>>920
ありがとうございます。
送信先URLにGETの仕様として送るってわけですね(^^
無事添付して送信できました。
955デフォルトの名無しさん:02/09/25 09:29
>>951

一応、実装のアイデアをまとめるのに使えるかもしれない。別に厳密に知る必要はなくて、
クラス図とかシーケンス図が便利に使えればそれでいいんじゃないか。
>>955
UMLをJavaで実装するには本が多いのがうれしかったり。
>952
パスの話は周期的にでてくるね
このスレのちょっと前にもあったけど
コマンドまた・・・ってでるのは
パスが正しくないから。
C:\j2sdk1.3.1_04\bin 配下ににjavac.exe等々はあるのか?
ないならある場所を設定してみ
OSによってはautoexec.batいじってもしょうがないけどさ
958952:02/09/25 12:36
レスしてくれた方々ありがとうございます。感謝。

Registry key 'Software\JavaSoft\Java Runtime Environment\CurrentVersion'
has value '1.3', but '1.4' is required.
Error: could not find java.dll
Error: could not find Java 2 Runtime Environment.
↑翻訳↓
レジストリ・キー「Software¥JavaSoft¥JavaランタイムEnvironment¥CurrentVersion」は、値「1.3」を持っています。しかし、「1.4」が要求されます。エラー:java.dllエラーを見つけることができませんでした:Java 2ランタイム環境を見つけることができませんでした。

たびたびすみません。さきほどは957氏のとおりでした。
Meなのでシステム設定ユーティリティのPATHがびみょ〜にタイプミスしてました。
で、
今度は↑のようなエラーが出てしまいました。
1.4を独習javaの付録CDからインストールした後
携帯プログラムのために1.3をインストールしたため952の通り
2つのバージョンが混在しているのですが、
どうしたらいいのでしょうか?
>>958
C:\Windows\java.exe と javaw.exe を削除しろ。
Javaの複数バージョン共有をしたいなら、
「環境変数設定+開発環境起動」用のバッチファイルでも書けばいいじゃん。
961デフォルトの名無しさん:02/09/25 15:29
ファイルの書き込みと読み込みについて質問です。

C のように
fwrite(&(構造体変数),sizeof(構造体の型),1,fp);
fread (&(構造体変数),sizeof(構造体の型),1,fp);
のようなかんじで、変数を一括してread,writeできる方法ってないですか?

使用する変数の変更があった場合や変数の型が異なる場合、
read用、write用のメソッドを両方いじらなければならないのが
かなり面倒なのですが。
>>961
Serializable, ObjectOutputStream/ObjectInputStream
JDKをインストールしたのですが、そのあとAutoexec.batをなんかいじくるらしいのですが、全くわかりません。
ゼロから教えてください。
964デフォルトの名無しさん:02/09/25 15:54
static メソッドってオーバーライドできないんですか?
965 :02/09/25 15:58
JAVAで 罫線ひいて カラーで印刷するには どうしたらいいのでしょうか?
>963
本を買うか、ぐぐれ
967デフォルトの名無しさん:02/09/25 16:06
public class ..... {
 public method(){
 }

 class hoge extends .... {
 }
 
}

のようにクラスにクラスを書いてる人のコード見たのだけれども
どういう事?始めて見た。
私的にはとても納得がいかないコードなのですが。
>>967
単なる内部クラスだよ。
>>967 隠蔽
>>967
Inner クラスという奴だ。Java で多重継承チックなことをやりたい
時や、C++ でいう friend クラスモドキを作るとき、ちょっと使う
クラスを別 Java ファイルに書くのが面倒なときなどに使う。
971デフォルトの名無しさん:02/09/25 16:12
内部クラスですか。
あまり御行儀の良い書き方だとは思えないんですが、なぜこの様な書き方するの
でしょう?
クラスの定義などは*.hファイルに分けたりするのにどうして?
>>971
多態と隠蔽を使いこなせるようになったとき、激しく便利な機能だと
気づくはず。
>クラスの定義などは*.hファイルに分けたりするのにどうして?
分けたりしません。っつか、クラスの定義(?)部分を
ヘッダファイルに分けるのって気持ち悪いね。
974967:02/09/25 16:21
なるほど、良く分かりました。有り難うございます。
多重継承もどきですか。こういう場所で大丈夫なのかな?
>>973
ふつーの C++ ならグローバルなクラス定義はヘッダでやると思うが。
>>971
ソースを読んでも「なぜ」の部分がわからないってのも困りものだが…
ヒマなら 内部クラス使わないように そのソースを改変してみれば?
> 多重継承もどきですか。こういう場所で大丈夫なのかな?

ポカーン
>>975
ここは Javaの初心者用相談スレだったと思うが。
C++ の 「ふつー」 を論じられても…
それに C# も Delphi も クラス定義(?)をヘッダに分けたりしません。

C++ のクラス定義(?)をヘッダファイルに書くのは
C の負の遺産の一部だと思ってたんだけど、
まぁ感じ方は人それぞれって事で。
979デフォルトの名無しさん:02/09/25 16:30
>>962
まだインターフェースも良くわかっていないんですが、(w
データクラスにimplements Serializableをつけて、
後は言われたようにObjectOutputStream/ObjectInputStreamで
できました。

ありがとうございます。
>>967
あるクラスをインスタンス化する権利を独占したい場合、
内部クラスにするのが普通と思われ
(他のやり方もあるかもしれんが)
981名無しです。:02/09/25 16:42
import java.applet.Applet;
import java.awt.*;
import java.awt.event.*;

public class rel extends Applet {
public void init() {
Choice cicShopping;
int intSum;

cicShopping = new Choice();
cicShopping.addItem("ボールペン ");
cicShopping.addItem("万 年 筆 ");
cicShopping.addItem("シャープペン");
add(cicShopping);
}
}

上の状態で、
"ボールペン "を選んだ時、 intSum = intSum + 100;
"万 年 筆 "を選んだ時、 intSum = intSum + 300;
"シャープペン"を選んだ時、 intSum = intSum + 200;
と言う機能を追加したいのですが、どうしたらよいでしょうか。
どなたか教えてくださいませんか。
星のデジャブー
addActionListener
*.h ファイルの話が出た時点で話の対象言語が C++ になってんだろーが。
>813>981
次スレ立ててね
そしたら答えてもらえるかも☆
と煽ってみるテスト
>>984
C++ でインナークラス作るのか?
Java に C++ の「御行儀」を持ち込もうとしたから
「感じ方は人それぞれ」と嗜めたつもりなんだが。
988983:02/09/25 16:58
addItemListenerか
>>987
(C++ なら) クラスの定義などは*.hファイルに分けたりするのにどうして?
 ↓
分けたりしません。っつか、クラスの定義(?)部分をヘッダファイルに分けるのって気持ち悪いね。
 ↓
ふつーの C++ ならグローバルなクラス定義はヘッダでやると思うが。
 ↓
ここは Javaの初心者用相談スレだったと思うが。C++ の 「ふつー」 を論じられても…
 ↓
*.h ファイルの話が出た時点で話の対象言語が C++ になってんだろーが。
 ↓
C++ でインナークラス作るのか?

結論: 日本語を理解しろ
>>989
C++ なら) クラスの定義などは*.hファイルに分けたりするのにどうして?
 ↓
(Javaなら)分けたりしません。っつか、クラスの定義(?)部分をヘッダファイルに分けるのって気持ち悪いね。
 ↓
ふつーの C++ ならグローバルなクラス定義はヘッダでやると思うが。
 ↓
ここは Javaの初心者用相談スレだったと思うが。C++ の 「ふつー」 を論じられても…
 ↓
*.h ファイルの話が出た時点で話の対象言語が C++ になってんだろーが。
 ↓
C++ でインナークラス作るのか?

自分の発言だけ 語を補うってのは感心しませんな。
991デフォルトの名無しさん:02/09/25 17:25
>>981
チョイスを使わなければいい
俺が >>971 だと勘違いしている方が居られるようですが。
質問者並の表現能力で開き直られてもねぇ。
1000!
sage
995
 
997 
(゚∀゚≡゚∀゚)
次スレだれか立てといてね☆
1000mamio_tan:02/09/25 17:45
1000get
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。