1read 100read
2013年02月プログラム14: ★★Java質問・相談スレッド159★★ (616) TOP カテ一覧 スレ一覧 2ch元 削除依頼
【実験台】 Python 3.0 のお勉強 Part 1 【非互換】 (555)
Mathematicaプログラミング 質問箱 その1 (342)
C#は糞2.0 (802)
Androidプログラミング質問スレ Part29 (360)
【License】ライセンス総合【利用許諾】 (480)
【安定版】ActiveBasicその12【4.24】 (932)

★★Java質問・相談スレッド159★★


1 :2013/01/23 〜 最終レス :2013/02/11
プログラミング言語Javaに関する質問スレです。
JavaScript, Ajaxの質問は、ここでは受け付けていません。
Web製作管理    http://pc11.2ch.net/hp/
Webプログラミング http://pc11.2ch.net/php/
をご利用下さい。
よくある質問
・「コマンドまたはファイル名が違います」
 「'javac' は、内部コマンドまたは外部コマンド、
 操作可能なプログラムまたはバッチ ファイルとして認識されていません。」
 「Exception in thread "main" java.lang.NoClassDefFoundError: 」
 (p)ttp://www.wikiroom.com/java/?path,classpath
・String に == は使うな。equals() を使え。
・「\12288 は不正な文字です。」
文字リテラル以外で全角スペースは使えません。半角スペースに。
・その他の質問→「APIのjavadoc見ろ」
前スレッド
★★Java質問・相談スレッド158★★
http://toro.2ch.net/test/read.cgi/tech/1353647661/

2 :
糞スレ

3 :
>>1
相談。
誰か前スレの単芝のキチ○イを抽出して、カキコミ時間をグラフにして欲しい。
単芝レスを判定するのって意外と難しいきがする。
何かいい方法ないかな。

4 :
日本語でおk

5 :
>>3
いつものようにママに頼めよ

6 :
そういやこの正月実家に帰れなかったな。ママンのがソリティアやマインスイーパのアルゴリズムは詳しそうだ

7 :
助けてください!
eclipseのコンソールで
package hoge.hoge.com;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Sample3 {
/**
* @param args
*/
public static void main(String[] args)throws IOException {
// TODO 自動生成されたメソッド・スタブ
System.out.println("文字列を入力してください。");
BufferedReader br=
new BufferedReader(new InputStreamReader(System.in));
String str=br.readLine();
System.out.println(str + "が入力されました。");
}
}
上記のコードで実行し、コンソールに「文字列を入力してください。」と、出るまではよいのですが、
「名前」と入力し、エンターを押すと
名前名前が入力されました。
となってしまいます。
検索して色々試してみましたが直りませんでした。
どうしたら直りますか?

8 :
昇天

9 :
貧乏過ぎて専門学校にも通えないというなら安心安全のグーグル先生に聞いてください

10 :
鍵括弧

11 :
こうすればいいです
public static void main(String[] args)throws IOException {
System.out.println("文字列を入力してください。");
BufferedReader br=
new BufferedReader(new InputStreamReader(System.in));
String str=br.readLine();
System.out.println("が入力されました。");
}

12 :
>>11
なぜ2つ表示されるかを教えてやれよ
場当たり的な対処はバグメーカーを造るだけ

13 :
改行はさめばいいじゃん

14 :
JDKの新しいバージョンが出るたびにリビルドしたほうがいいの?

15 :
<item>
<title>助けてください</title>
<content:encoded>この部分を抜き出したい</content:encoded>
</item>
のxml内容をStAXでパースしたいのですが、
tag.equals("content:encoded")で取り出せなくて・・・
どなたかご教授お願いします

16 :
その場限りのやっつけ対応でいいのなら
XMLInputFactoryの名前空間機能を殺してみては?

17 :
>tag.equals("content:encoded")で取り出せなくて・・・
なんですかこれ?

18 :
Streaming API for XML - Wikipedia
ttp://ja.wikipedia.org/wiki/Streaming_API_for_XML
これか

19 :
ReourceBundleでロケールを指定して呼び出したとき、そのロケールのリソースが
存在すればそれが返ってきて、ない場合は例外が発生すると思いますが、
リソースが存在するロケールの一覧を得る方法はあるでしょうか。

20 :
ここであってるかわからないのですが
マシンをA、Bを用意してAからBのプログラムを実行する方法ってありますか
あれば教えて欲しいのですが

21 :
>>20
SSH

22 :
SSHコマンドを使えってことですねありがとうございました

23 :
>>15
equalsで比較してやるのが定石なのか?なら不便すぎるんだが。(StAXを知らないから的外れならスルーしてくれ)
dom使わない理由があるならスマンが一応俺のやりかた
DocumentBuilder documentBuilder = DocumentBuilderFactory.newInstance().newDocumentBuilder();
Document document = documentBuilder.parse(fileなりurlなり);
Element rootElement = document.getDocumentElement();
ArrayList<String> array = new ArrayList<String>();
NodeList itemList = rootElement.getElementsByTagName("item");
for(int i=0; i<itemList.getLength(); i++) {
Element element = (Element) itemList.item(i);
NodeList content = element.getElementsByTagName("content:encoded");
array.add(content.item(0).getFirstChild().getNodeValue());
}
これで一応<content:encoded>の内容はarrayにぶち込めるんじゃないの?(そんな気がするだけ)
何がしたいのかいまいちわからないから>>16のような回答になるんじゃないかな

24 :
あいかわらずアホしかいないw

25 :
単芝やろうってこいつか・・・

26 :
>>20
RMI、CORBA。

27 :
今メインで作ってるものないんだが、何かお題をくれ

28 :
プログラミングのお題スレ
http://toro.2ch.net/test/read.cgi/tech/1357191974/

29 :
あ、もういいです

30 :
>>27
ignoreCaseなMap<String, V>を作ってけれ。

31 :
>>30
勉強のために自分で作ってみるならいいけど、仕事か何かですぐ使いたいならもうあるぞ。
http://commons.apache.org/collections/api-release/org/apache/commons/collections/map/CaseInsensitiveMap.html

32 :
世の中にはOSSでいっぱいあるだろうけど、
遊びで自作してみるのは面白いと思って。
仕事なら、toUpperCase()して突っ込んで済ませるわ。
ただ、ロカールの違いでignoreCaseの動作が変わるらしいから、
真面目にやろうとすると、結構面倒臭そうだ…。

33 :
毎度毎度toUpperCase呼ぶのがあほジャバー流

34 :
File dir = "./"
while (true) {
for (File f : dir.listFiles()) {
あーだこーだ処理
}
Thread.sleep(1000L);
}
これをスレッドで複数動かそうとしてる
これの処理中にlistFiles()でできた配列ってちゃんとgcされますかね?
ずーっと動かしっぱにするつもりなんだけど。。
>>20
telnet,rsh,rpc
てかよくこのスレにしようと思ったねw

35 :
あーだこーだ処理の内容次第

36 :
String[] array = {"Java","C","VB","Perl","Ruby","PHP", ・・・};
for (String elem : array) {
 ファイル名がitemのファイルを処理;
 ファイル名がitem.*にマッチするファイル(*はワイルドカード)を削除;
}
ってのをやりたいんだけど
forループ内でitem.*にマッチするファイルを探すのに毎回ディレクトリ内の全ファイルを
走査することはしたくない。
何かいい方法ある?

37 :
高速化の意味で聞いてるなら、検索専用の索引ファイルを用意したら?
確か最近のOSってそういう仕組みで検索できるようにしてるよね

38 :
あ、馬鹿は黙っててください^^

39 :
>>35
File.listFiles()で出てきたFile[]をそれぞれファイル名見たりして
削除したりProccessBuilderにかけて別の事させたり。
要はFile[]がループの度に生成されるが大丈夫かな?
ループ内で処理の終了時に明示的にnullしてやった方がいいとか??

40 :
>>36
よく分からないんだけど「ファイル名が item」ってのは item.java とか item.c があるってこと?ループ内の1行目と2行目の条件に該当するファイル違いがよくわからないんだけど、二重ループにするんじゃダメなの?
for (File f : dir.listFiles()) {
for (String elem : array) {
  ファイル名がitemのファイルを処理;
  ファイル名がitem.*にマッチするファイル(*はワイルドカード)を削除;
}
}

41 :
よく分からないなら触らないでスルーしろ

42 :
>>19みたいなことが必要になって何か実装した人はいませんかー?
今現在どういう言語がサポートされてる、みたいな一覧をリソースから作りたい
のですが...

43 :
>>37
索引ファイルはやりたいことと比べると大げさな気がするので避けたいです。
>>40
>>36では言葉足らずだったので補足します。
まず、処理対象ファイルのリストarrayが与えられます。
処理対象ファイルのリストは、指定されたディレクトリを再帰的に走査して
ファイル名、タイムスタンプなどの条件に合うファイルを集めたもので、
上限数1000個になったら走査は打ち切られます。
例えば、arrayの要素を/hoge/piyo, /hoge/foo/bar, /hoge/baka/aho とします。
forループの中で/hoge/piyoを処理したら、/hoge/piyo.java, /hoge/piyo.cなど
拡張子つきのファイルも存在すれば削除したいのです。
拡張子の種類は様々で直接指定することはできません。

44 :
doubleやint等の数値をファイルに書き込む時、みなさんどうやってます?
文字にして書き込む・obj以外で実現出来ますか?

45 :
よく分からないんだけど他にも色々ありますよ!

46 :
>>44
バイナリ

47 :
>>46
できないでしょ double は

48 :
>>43
大事な所を誤魔化してるからわかりづらいじゃんか。説明変わってるし。
/var/log/
/usr/local/apache/log/
みたいなのがあって、その下の
log.err
log.out
log.2013-01-25
を処理して削除するようなイメージかな?
最初の説明だとあるディレクトリがあって、elem が "Java" の時に listFiles() を一回、
"C" の時に listFiles() を一回... となるけど、後の説明だと /hoge/piyo, /hoge/foo/bar,
/hoge/baka/aho に対して一回ずつ listFiles すれば、「毎回ディレクトリ内の全ファイルを走査」
しなくていいだろ。
結局 listFiles() 使ってそのディレクトリのファイル一覧持ってきて、
各ファイルに対して名前をチェックして削除するようにすればいいんじゃないか?
FilenameFilter を引数にして listFiles() を呼び出してもいいし。

49 :
文字にして書き込むのが簡単です

50 :
つづき - 例えば..
String absolutePath = "/hoge/piyo"
File directory = new FIle(absolutePath);
String baseName = // 正規表現か何かで /hoge/piyo を piyo だけに直す。
File[] files = directory.listFiles();
for (File file : files) {
if (file.getName.startsWith(baseName)) {
file.delete();
}
}
これでダメなら自分で途中まで書いたコードを ideone にでも貼り付けて。
あと /hoge/baka/aho とか書かないほうがいいな。実社会でもアドバイス仰ぐときにそんなふざけないだろ。

51 :
>文字にして書き込む・obj以外で実現出来ますか?
ってようするにバイナリデータに変換したいってことだろ
byte b[] = new byte[4]
ByteBuffer.putInt(1)
ByteBuffer.get(b);
bを書き込む

52 :
オーバーロードについて教えてください。
このように書いたときvoid Method(Kobun kobun)が呼ばれることは保証されますか?
教えてくださいお願いします。
interface Oyabun {
}
class Kobun implements Oyabun {
}
void Method(Oyabun oyabun) {
}
void Method(Kobun kobun) {
}
Oyabun oyabun = new Kobun();
Method((Kobun)oyabun);

53 :
はい

54 :
>>53
そうですか安心しましたそして解決しました。ありがとうございました。

55 :
>>50
arrayは処理対象ファイルのリストです。
arrayの要素/hoge/piyo等はファイルです。
/hoge/の下にpiyo, piyo.java, piyo.c, piyo.txt, boo, pee, /hoge/foo/等多くのファイル・ディレクトリがあります。

56 :
>>46
>>49
>>51
ありがとうございました
実数のバイナリ書込みは手間がかかりそうですね

57 :
>>56
static longdoubleToRawLongBits(double value)
IEEE 754 浮動小数点の「ダブルフォーマット (double format)」ビットレイアウトに従って、非数 (NaN) 値を保持する、指定された浮動小数点値の表現を返します。
使うといいよ

58 :
Javaでdoubleを保存するのにバイナリ形式を
使う奴は100%ジジイ。

59 :
爺じゃないけど知識不足でそうしてる人がここにいますが。

60 :
>>58-59
荒らすな雑魚ども

61 :
と、zakoインターフェースをインプルメンツした子が申しております。

62 :
自己解決しませんでした

63 :
>>57
ありがとうございます 参考にさせて頂きます

64 :
あなたとJAVA
→なんで大文字?

65 :
画像の表示が出来ません。(abc.jpg)
使用ソフトは「NetBeans」です。
もちろん画像ファイルは同じフォルダに入れてます。
内容は次に書き込みます。
「行が長すぎます」の警告が出たので、
後半部分(閉じる部分 Closingなど)は削ってます。

66 :
import java.awt.*;
import java.awt.event.*;
public class test extends Frame {
Image i = getToolkit().getImage("abc.jpg");
public static void main(String[] args) {
Frame f = new Frame();
f.setSize(300,200);
f.setVisible(true);
f.addWindowListener(new Ada());}
public void paint(Graphics g){
g.drawImage(i,50,35,this);}

67 :
>>66
Frame f = new Frame(); じゃなくて new Test(); だろ。
そうしないと Image への参照を持たせて paint() をオーバーライドした意味ない。

68 :
ソース読むとき
頭の中でどうやって整理して理解してるん?

69 :
ツリー型で。

70 :
馬鹿には無理

71 :
>>67
>Frame f = new Frame(); じゃなくて new Test(); だろ。
new Frame();をnew Test()に変更しても失敗します。
全体をnew Test();に変更したら、下記の「f.」部分がエラーになります。

また書き直しました。
「さすけのプログラミング入門 JAVA 画像表示」
のサイトを丸移しです。
フレームは起動しますが画像は出ません。

72 :
上記サイトの「AWTを使用しての画像を表示」を引用してます。
import java.awt.*;
import java.awt.event.*;
public class Frametest extends Frame{

Image pi=getToolkit().getImage("abc.jpg");

public static void main(String[] args) {
Frametest f = new Frametest();
f.setSize(200, 100);
f.setVisible(true);
f.addWindowListener(new Ada());}
public void paint(Graphics g)
{g.drawImage(pi,50,35,this);
以下略

73 :
自分の環境だとそのまま動いたよ。
画像ファイルの置き場所が違うかもよ。
src 以下じゃなくて、プロジェクトディレクトリの直下だよ。
http://imgur.com/6O5aL5C

74 :
>>73
ありがとうございました。プロジェクト直下で無事表示されました。
今までは「Frametest.java」と同フォルダに入れてました。

75 :
URL resUrl = クラス名.class.getResource("res/");
Image image = getToolKit().getImage(resUrl.getPth()+"image.jpg");
みたいにしたほうがいいんじゃないの?
フォルダにまとめないならgetResource("")で。

76 :
お聞きしたいのですが
class A{
int n;
A(int x){
n=x;
}
int getN(){
return n;
}
}
class B extends A{
int k;
B(int x){
k=x;
}
int getK(){
return k;
}
}
以下メインクラスメインメソッド
A abc=new B(5);
int tmp=abc.getK();

77 :
上の続きです
Aクラスを継承したBクラスのインスタンスをAクラス型に代入して
abc.getK()でBクラスのgetK()メソッドを実行したいのですが、可能なのでしょうか?
また上と同じような書き方でabc.getN()とすればAクラスのgetN()メソッドを実行できるのでしょうか?
javaが複雑で頭がいたいです。どうか教えていただけますでしょうか。

78 :
あなたには無理なので諦めましょう

79 :
実行して確認すれば済むだろ

80 :
Javaが複雑って、Javaのせいにするなよ・・・
どう考えても君の思考回路とソースの書き方のせいだと思うぞ。割とマジで。

81 :
>>77
Aクラスには引数をとるコンストラクタしかないから
BクラスのコンストラクタでAクラスのコンストラクタを呼ぶ必要がある。
B(int x){
  super(x);
  k=x;
}
>Aクラスを継承したBクラスのインスタンスをAクラス型に代入して
>abc.getK()でBクラスのgetK()メソッドを実行したいのですが、可能なのでしょうか?
キャストすればできるよ。
tmp = ((B)abc).getK()
>また上と同じような書き方でabc.getN()とすればAクラスのgetN()メソッドを実行できるのでしょうか?
できるよ。

82 :
Javaやると必要なプログラムは自分で作るんじゃなくてどっかから探してくるっていう姿勢がついてよくないと思うわ

83 :
馬鹿になるプログラミング言語

84 :
>>77
Aクラスに存在しないメソッドをAクラスの変数に代入した
インスタンスから実行することは不可能です。

85 :
初めての言語はjavaなら馬鹿にはならないが、C++から移行すると馬鹿化してC++には戻り難くなる

86 :
>>82
プログラミング自体が目的と化しているよくない傾向がみえる

87 :
>>82
車輪の再発明イクナイ

88 :
できることが制限されるだけ
再発明ヨクナイとか言ってツクールでクソゲー作ってろよ

89 :
>>88
こういう雑魚は相手にするなよ

90 :
お前が一番初めに相手にしてる件

91 :
お前だろ

92 :
JavaでGUI作るならAWT Swing SWT どれがいい?

93 :
JavaならHTMLが唯一の選択肢だよ
どれも間違い

94 :
SWTとawt。
Swing使うときはすぐに実装したいとか小規模のときにしか使ってないな
資料少ないが、javascriptが弄れるんでSWTはかなーり使われてるよん

95 :
SWTってマルチプラットフォーム対応?

96 :
はい

97 :
じゃあSWT覚えます

98 :
SWTってもしかしてプラットフォームごとにコンパイルしないといけないの?

99 :
クロスプラットフォームだから当然。
でもここまで何だかんだ使われてるのは「Javaなのに」っていう用途以外でもJavaが使われてる証拠だな

100read 1read
1read 100read
TOP カテ一覧 スレ一覧 2ch元 削除依頼
やってて楽しいプログラミング言語は? 3言語 (968)
Google NaCl プログラミング 2mol (286)
【糞.NET】裏切り者には死を【アンチゲイツ】 (339)
HTAをもっと流行らせる計画 Part2 (666)
BASICの宿題はお前にまかせた (553)
[Java]JBuilder5[Java] (783)
--log9.info------------------
愛こそはすべて・・ウソじゃん (397)
アビイ・ロードのクオリティの高さは異常 Part2 (632)
ザ・ビートルズ・クラブ (241)
ビートルズ最高のギターソロは? (786)
ビートルズ以外■海賊盤(ブートレグ)総合 (301)
【ショーケンの出来損ない】萩原健太【男尊女卑】 (200)
アルバム「PLEASE PLEASE ME」のスレ (580)
ビートルズとビーチボーイズ (447)
FREE AS〜とREAL LOVEについて (808)
★☆★ excite翻訳で遊ぶスレ part 2★☆★ (723)
ジョージはポールより喧嘩が強くて度胸のある不良 (420)
ジョージハリスンとかいうキンタマ顔 (240)
マッカートニィーの真価は? (386)
ペットサウンズって・・・ (928)
iPodをシャッフルして出てきた5曲を晒すスレ (342)
LENNON-McCARTNEY SONGの実態は? (743)
--log55.com------------------
【偏差値】上武大学 part3【36】
奈良マラソン
給水所に水の代わりに置いてあったら嫌なもの
中学、高校で鍛えすぎると伸びない説は本当なのか
パズドラレクサスおじさんの取り巻き
◆◇◆ 群馬の陸上を語るスレ Part13 ◆◇◆
【立志鍛練】小林高校駅伝部 part12【上原監督の挑戦】
日本陸上界の新しい「聖地」は長居で決定