トップページ⇒tech
1001コメント344KB

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

レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん2007/06/27(水) 07:23:27
プログラミング言語Javaに関する質問スレです。
JavaScript, Ajaxの質問は、ここでは受け付けていません。
Web製作板をご利用ください。http://pc10.2ch.net/hp/

過去ログ、関連スレッド、よくある質問とその回答など、
質問をする前に、貴方が見なければならないサイトについての情報は、
下のwikiのページにまとめてあります。
http://www.wikiroom.com/java/
これからJavaでプログラミングを始めたいが、何をすればいいかわからない人も、
wikiからのリンクをおたどりください。

よくある質問
・「コマンドまたはファイル名が違います」
 「'javac' は、内部コマンドまたは外部コマンド、
 操作可能なプログラムまたはバッチ ファイルとして認識されていません。」
 「Exception in thread "main" java.lang.NoClassDefFoundError: 」
 http://www.wikiroom.com/java/?path,classpath
・String に == は使うな。equals() を使え。
・「\12288 は不正な文字です。」
文字リテラル以外で全角スペースは使えません。半角スペースに。
・その他の質問→「APIのjavadoc見ろ」

前スレッド
【初心者】Java質問・相談スレッド102【大歓迎】
http://pc11.2ch.net/test/read.cgi/tech/1180419689/

/* 既出の質問や、他に適切なスレが存在する質問は、容赦なく無視されます。
質問をする前にwikiで過去ログ、関連スレ、FAQをチェックしてください。 */
また、当スレで質問をするかたは、回答をもらえたときに、
wikiの更新をして頂ければ、忝なく存じます。

次スレは>>980あたりで。
0981デフォルトの名無しさん2007/07/27(金) 09:55:44
>>976
cron
0982デフォルトの名無しさん2007/07/27(金) 10:33:24
Eclipseならプラグインがあったんだが。

>>979
ちょっと試してみたが、なかなか面白そうなツール。
要するに、テスト対象のコードをいじって、テストがそれを検出できるかを調べるツール。
カバレッジとはまた別の視点で単体テスト品質を計測するようだ。
0983デフォルトの名無しさん2007/07/27(金) 10:51:34
文字コード変換について質問です。
開発環境の文字コードはEUCなのですが、

String sample= "さんぷる";
String sjSample = new String( sample.getBytes( "SJIS" ), "SJIS" );

上の処理でSJISに変換されるんでしょうか?
変換された事を確認することってできないんでしょうか?
0984デフォルトの名無しさん2007/07/27(金) 10:55:46
>>983
> 上の処理でSJISに変換されるんでしょうか?
一瞬だけ。

> 変換された事を確認することってできないんでしょうか?
sample.getBytes("SJIS") の戻り値を確認。
0985デフォルトの名無しさん2007/07/27(金) 11:36:56
>>984
>一瞬だけ。
プログラム実行中は変換されたままですよね?

>sample.getBytes("SJIS") の戻り値を確認。
戻り値を確認してみたら [B@ed0338 でした。
変換されたのはなんとなくわかりますけど、こういうもんですか?
0986デフォルトの名無しさん2007/07/27(金) 11:43:53
>>985
> プログラム実行中は変換されたままですよね?
no。すぐにGC可能状態になる。

> 戻り値を確認してみたら [B@ed0338 でした。
toString()が確認に使えるか、もチェックしてから使え。
sample.getBytes("SJIS") で戻ってきた配列の中身を確認しろ。
0987デフォルトの名無しさん2007/07/27(金) 11:44:28
>>983,985
ソースコードを EUC で書いても、String は Unicode です
getBytes("SJIS") で SJIS に変換されるけど、String に戻したらまた Unicode です
0988デフォルトの名無しさん2007/07/27(金) 12:33:10
>>986
配列の中身まではみていませんでした。
確認したら数値が入っていたので調べてみます。

>987
内部コードってやつですか・・・SJISで扱えるのはgetByte("SJIS")の戻り値だけってことですね。

すいません、質問を変えさせてください。
URLConnectionを使って相手先に複数のパラメータを送ろうとしているのですが、
日本語を扱うパラメータはSJISに変換することになっています。
この変換が上手くいかず、今はEUCで送ってしまっている状態です。
日本語パラメータをSJISで送るにはどうすればいいんでしょうか?

SJISに変換した文字列を送ろうと思って最初の質問をしていました。
0989デフォルトの名無しさん2007/07/27(金) 12:49:59
>>988
java.net.URLEncoder.encode("文字列", "SJIS");
0990デフォルトの名無しさん2007/07/27(金) 15:02:02
無料ホームページスペースを使って、JAVAアプリケットをおいてJAVAアプリケットから誰でもそのホーム
ページのFTPに入ってパスワードを入れて
ファイルを書き換えることはしてもいいんですか?
0991デフォルトの名無しさん2007/07/27(金) 16:12:31
規約嫁としか
09929682007/07/27(金) 16:35:58
JAVAアプリケット関係ない
つーかJAVAアプリケットて何?w
09939682007/07/27(金) 16:37:02
あ、名前消すの忘れてたw
0994デフォルトの名無しさん2007/07/27(金) 17:45:49
>>992
インストロールみたいなものじゃないの?
0995デフォルトの名無しさん2007/07/27(金) 17:59:24
>SJISに変換することになっています。
分かりづらい地味な嫌がらせだな。せめてUTF-8にしてやればいいのにw

>>990
鯖の規則読んで出来るか確認してjavaアプレットから
どうやってFTP叩くかまで出来てからのご来場をお待ちしております。
じゃなきゃエスパー待ちになるぞ。
0996デフォルトの名無しさん2007/07/27(金) 19:37:43
synchronized 指定されたメソッド呼び出しをしたら、
オブジェクトにたいしてロックが入るの?
それともメソッドだけ??

class Hoge {
public synchronized int hoge(){...}
...
}

Hoge hoge.hoge();

↑ こうやったときに 別のスレッドからはhoge()だけ呼び出しできないのか、
それともhogeに対するアクセスは全部ロック解除待ちになるの?
0997デフォルトの名無しさん2007/07/27(金) 20:40:28
>>996
hoge
0998デフォルトの名無しさん2007/07/27(金) 20:40:39
synchronizedメソッドはsynchronized(this){}と同じ意味だった気がする
だからhogeの他のsychronizedメソッドもロックされるな
0999デフォルトの名無しさん2007/07/27(金) 20:44:21
メソッドは呼び出しできないけどオブジェクトにはアクセスできたと思う
オブジェクトをロックする方法は別にあったはずだし
1000デフォルトの名無しさん2007/07/27(金) 20:45:07
ガチでか
勘違いしてたぜ(´ー`;)
10011001Over 1000Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。