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

このエントリーをはてなブックマークに追加
952951:2007/03/04(日) 02:22:08
少し進展?しました。

どうやら
tokenizer.parseNumbers();
を追加すると、'-'を文字列の先頭文字として
認識できないことがわかりました。

tokenizer.parseNumbers();
を追加した状態で'-'を文字列の先頭文字とすることは
できないのでしょうか?

よろしくお願いします。
953デフォルトの名無しさん:2007/03/04(日) 04:35:22
API ドキュメントを見る限り無理っぽいが。
954デフォルトの名無しさん:2007/03/04(日) 05:45:16
まあ仕組み考えたらparseNumbers使ったら-が文字なのかマイナスを表すのか分からなくなるから無理だわな

何がしたいの?
javaCCで字句解析機吐くか自作すればいい。トークナイザ使う必要もなさそうな気がする
955846:2007/03/04(日) 06:10:43
>>849
>>850
お返事が遅くなって申し訳ありません。
どちらも特に変化無く、物は試しとユーザーを「sa」にしたらコネクション作れました。
で、ユーザー名を元に戻すと「Access denied for user」。
ユーザー名もパスワードもコピペで作ってるんだけどなぁ……。

ちなみにホスト名は「localhost」になっているので、他のサーバにアクセスしにいったりはしていないようです。
うーむ、なぜだろう……。
956デフォルトの名無しさん:2007/03/04(日) 09:33:50
はじめまして

通信ソフトを作っていて、文字のやりとりだけでなくzipファイルなどのやりとりもできるようにしようと思いつき、送るストリームの先頭にタグのようなものを付けて区別しようと思いました。
しかしInputStreamなどからまずタグを取り出すと言う操作のしかたがわかりません。
タグはStringで持たせようと思っています。

どうか教えていただけないでしょうか。
957デフォルトの名無しさん:2007/03/04(日) 09:56:14
プロトコルって知ってるか?
958956:2007/03/04(日) 10:07:31
>>957
一応少しはわかっているつもりです。

今回はSocketを使って作っておいて、後にP2P化しようと思っているので

見当違いなことをいっているのなら指摘してもらえるとありがたいです。
959デフォルトの名無しさん:2007/03/04(日) 10:14:50
>>958
SocketとP2Pは直行する概念だと思うんだが・・・
だいぶ「つもり」のようだなぁ・・・

ストリームを送る、という言葉がちょっと違和感ある
JavaのStreamインターフェースとは別の概念で使ってるよな?
960956:2007/03/04(日) 10:30:34
>>959
そうですか・・・(´・ω・`)
将来的にはJxtaに移行したいなと思っていますが、今は標準のSocketを使うつもりです。
ストリームというのはあくまでもSocketからgetInputStreamなどで処理しないといけない(?)と思っているので、
ソフトのなかでInputStreamを使うということです。

朝からすみません
961デフォルトの名無しさん:2007/03/04(日) 10:40:58
そんな状態でこんなところで質問してないで、本でも読んで勉強する方が早いぜ。
近所の本屋に行くとかamazonあたりで探すとかしてみれ。
962デフォルトの名無しさん:2007/03/04(日) 10:48:40
>>946
もしかして : 難読化
963956:2007/03/04(日) 10:52:14
>>961たしかにそうですね。
本を探してみます。返事をしてくれた方がたありがとうございました。
964デフォルトの名無しさん:2007/03/04(日) 11:20:01
>>953,954
お返事ありがとうございます。
・parseNumbersを指定しても"-"単体では通常文字として認識すること
・文字は複数の属性(通常、文字列、数値構成文字等)をもてること
から何とかしてくれても良さそうな気もするのですが、
現状の実装ではどうしようもなさそうですね。。。
965デフォルトの名無しさん:2007/03/04(日) 13:14:12
>>952
面倒だからJakarta OROかjava.util.regex使えよ
966デフォルトの名無しさん:2007/03/04(日) 13:16:27
>>955
WindowsXPで使用しているアカウントが
関係あったりしないよな。
my.iniなどの設定は大丈夫かね?
SQLのgrantでちゃんと権限与えてる金?
967デフォルトの名無しさん:2007/03/04(日) 13:19:35
>>956
通信ソフトってことはTera TermやPuttyのような
ソフトのことを言うのだな?

だが、そういうの(ファイル転送)って普通、FTPでやるもんじゃないのか?
FFFTPやWinScpのようなソフトウェアをJavaで自作する、みたいな。

もしそういうことであれば、Jakarta Commons FTPやJakarta Commons VFS, Jschを
使えば簡単にできるとは思う。


968956:2007/03/04(日) 15:09:54
>>967
返答ありがとうございます。
今回作ろうとしているのは、Socketを使って中央サーバーを持たないチャットをつくり、
その拡張機能としてzipなどのいろいろな形式のファイルも送れるようにしたいと思っています。
それで今、送るbyte列の先頭にファイルの種類と識別文字を付けて送り、その識別文字を使ってファイルの種類の文字列を取得して、その文字列によって残りのbyte列からファイルを取り出すと言う操作を作ろうとしているのですが、
どのようにしてファイルを取り出せば良いのかわかりません。
どうか教えていただけないでしょうか。
969デフォルトの名無しさん:2007/03/04(日) 15:35:37
>>965
そうですね。
parseNumbersを有効にせずに、すべて文字列として取得した後に
regexで数字を取り出すことにしてみます。

ありがとうございました。
970デフォルトの名無しさん:2007/03/04(日) 16:24:35
>>968
何というか、その流すデータのフォーマットを考えるところから
そのアプリケーションを作る、という作業だと思うんだが・・・
そういう意味で、>>957はプロトコルって言ってるんだろうけど
それが理解できないのは辛いんじゃないか?

個人的には、Streamの上に、ObjectStreamを乗せて
通信データのキャリアオブジェクトを流す、
それが分かりやすいかな、と。相手がJava限定なら。
か、XMLEncoder,Decoderと組み合わせて、XMLベースで流すか。
バイト列単位のフォーマットは、扱いが難しいよ、
せっかくパケットの分割集約なんかはTCP層がやってくれるんだから
それはやらなくていいと思う
971956:2007/03/04(日) 16:48:34
>>970
取り合えずここのアドバイスがわかるようになるまで勉強します。
皆さんどうもありがとうございました。
972デフォルトの名無しさん:2007/03/04(日) 17:20:40
num = str[i] - '0';

↑'0'を引いて何してるんデスカ?
973デフォルトの名無しさん:2007/03/04(日) 17:30:07
>>972
全角数字一文字から 10進数の一桁 に変換してるとか。
974デフォルトの名無しさん:2007/03/04(日) 17:31:38
>>973
トンクスです
975デフォルトの名無しさん:2007/03/04(日) 20:11:24
>>968
結局P2Pの通信ソフトにするのか、
それじゃFTPとかSSHとかtelnetとか
関係ないな。

サーバ介さずあくまでP2Pにこだわるんだな?

それならSOBAはどうだろう? EclipseでもSobalipseというのがあって
Eclipseスレに作者が直接書き込んでいたこともあったな。
だがあとからはSobaをつかわなくなったとか。




>>970
それは、P2Pでもできるのか。
P2Pでやりたいといってるようだから、どうしても、JXTAが頭から離れない。

XMLEncoderの説明までするなら、キーワードRMIも出してもいいような気がする。

つうか、XML垂れ流しだとファイル丸見えでは? Serializableで少しでも見づらくしてもいいのでわ
と思ってみた。
976デフォルトの名無しさん:2007/03/04(日) 20:20:57
javax.mailを使用してメール送信したいんですが、
エラーになって送信できません。
エラーはSMTPの応答コード421のサービスが利用できない旨のエラー。
送信に使用するアカウントが生きていることは確認してます。

で、ここから質問なんですが、
OSがLinuxの場合、OSでなんらかの定義(メールやSMTP関係、25番ポート開放)をしていないと
エラーになるものなのでしょうか?
977デフォルトの名無しさん:2007/03/04(日) 21:01:31
>>975
暗号化はまずは切り離して考えた方がいいと思うぞ。
>>976
そのマシンから、telnet でSMTPサーバの25番ポートを叩いて
SMTP直接手打ちで問題が出ないかをチェックした方がいい
978デフォルトの名無しさん:2007/03/04(日) 21:05:08
>>977
telnetでエラーがでてます。
421 Sorry, you must log in before using this server.
ここのサーバーはpop before smtpらしいですが
関係あるのかな・・・。
979デフォルトの名無しさん:2007/03/04(日) 21:14:52
>>978
大蟻
980デフォルトの名無しさん:2007/03/04(日) 21:20:51
>>978
Javaの問題じゃない
981デフォルトの名無しさん:2007/03/04(日) 21:30:18
pop before smtpだからエラーになってるんですか。
コア部分は他人が作ったクラスを使用しているので、
対応してなかったんだと思います。
とりあえず自作するか、修正してもらうかはまた決めます。
ありがとうございましたorz
982デフォルトの名無しさん:2007/03/04(日) 22:42:35
どうしてもつくれないアルゴリズムがあるので助けてください
1円〜999円のお買い物をするときに
はらう硬貨の枚数とお釣りの硬貨の枚数の和が最小になる払いかたで
払う金額と持っている硬貨枚数がいかなるときでも対応できるアルゴリズムがわかりません
1000円札は1枚は持っています

硬貨は1.5.10.50.100.500です。お札は1000のみです

すみませんマジお願いします
983デフォルトの名無しさん:2007/03/04(日) 22:44:13
>>982
宿題なら宿題スレに池
宿題スレで昔見たことあるきがするが
984デフォルトの名無しさん:2007/03/04(日) 23:06:47
>>982
その程度なら全探索空間調べても問題なさそうな気がするが。
985デフォルトの名無しさん:2007/03/04(日) 23:06:57
>>982
Javaである必要性が明記されてないからスルー
986デフォルトの名無しさん:2007/03/04(日) 23:20:12
>>982
小さいコインから使っていく
そのときその次のコインの倍数になるとこまで小さいコインがあるかどうかがポイント
987デフォルトの名無しさん:2007/03/04(日) 23:33:46
>>976
sendmailやmailコマンドでメール送信できるのか
試してみたか?

Javaのバージョンが古いと動かないこともある。
1.4だったJavaを Java 5にアップグレードしたらJava Mailの
送信に成功したことがある。
988デフォルトの名無しさん:2007/03/04(日) 23:35:35
>>982
オサイフケータイを使えば硬貨枚数は最小になる。
989デフォルトの名無しさん:2007/03/04(日) 23:40:14
万引きしても(ry
990デフォルトの名無しさん:2007/03/04(日) 23:41:34
わからなさそうなので全探索します
991デフォルトの名無しさん:2007/03/04(日) 23:47:41
          /          /        \
   ____/_______/_ _ _ _ _ _ ヽー―ヽ______
   | ̄|| JAVA質問・相談99  | | ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄i二||
   || ̄ ̄ ̄ ̄|| ̄ ̄ ̄ ̄ ̄. :┌|:| || ̄|| | ̄ || || || ̄|||.______| ̄| ̄| ̄| ̄|i二||
  [||       ||         [:]| | ||  || |   ||._.||._.||  |||.| ̄|| | |_|_|_|_|i二||
   ||   ∩_∩|||.       .:  | | ||  || |   ||   .||  |||.|  || | |   .|   |.i二||
   ||  (´ー.`|||\.       .:  | | ||  || |   ||   .||  |||.|  || | |   .|   |   |
   ||  ⊆⊇⊂||||  \.     ;  | | ||  || |__||_____ ||_|||.|_|| | |二二 |二二|   |
   |二二:二二二二:二二二ニニ| ||  ||  ̄ ̄ ̄ ̄ ̄ ̄ |   | |  ̄ ̄ ̄ ̄ ̄   |
   |                   |   || ||  || /⌒.∧_∧   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
   |―――\/――――‐.|― || ||  || || . (´∀.` )<  みなさん、迎えに来ましたよ。
  [|口口 ┌―┐   口口| [] || ||  || .|||:0(    )  \_______________________
  |二口二└―┘二二二口二ニ|| ||_||__||| | | |  |_ | | _||| : ||    _/
   ̄ ̄ ̄ ̄ ̄ゝ_ゝノ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ゝ_ゝ(_(__) ̄ ̄ ̄ ̄ゝ_ゝノ ̄
992デフォルトの名無しさん:2007/03/04(日) 23:57:57
やだやだ98がいいんだい
993デフォルトの名無しさん:2007/03/05(月) 00:28:10
98 → 98SE → ME
994デフォルトの名無しさん:2007/03/05(月) 01:31:06
銀河鉄道999だろ
995デフォルトの名無しさん:2007/03/05(月) 01:34:40
      ☆ チン     マチクタビレタ〜
                        マチクタビレタ〜
       ☆ チン  〃  ∧_∧   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
        ヽ ___\(\・∀・) < 新スレまだ〜?
            \_/⊂ ⊂_ )   \_____________
          / ̄ ̄ ̄ ̄ ̄ ̄ /|
       | ̄ ̄ ̄ ̄ ̄ ̄ ̄|  |
       |   D B    |/
996デフォルトの名無しさん:2007/03/05(月) 01:35:43
【初心者】Java質問・相談スレッド99【大歓迎】
http://pc11.2ch.net/test/read.cgi/tech/1173026128/
997デフォルトの名無しさん:2007/03/05(月) 04:19:20
998デフォルトの名無しさん:2007/03/05(月) 07:31:49
>>987
>>978 既に問題は解決済
999デフォルトの名無しさん:2007/03/05(月) 08:57:14
うめ
1000デフォルトの名無しさん:2007/03/05(月) 08:57:45
Javaありがとう!!
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。