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

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

■ このスレッドは過去ログ倉庫に格納されています
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あたりで。
0294デフォルトの名無しさん2007/07/02(月) 13:00:32
時代はOggとかAC3だろ
0295デフォルトの名無しさん2007/07/02(月) 13:10:17
http://java.sun.com/products/java-media/jmf/mp3/download.html
0296デフォルトの名無しさん2007/07/02(月) 18:05:58
MD5で暗号化したのをSystem.out.printで表示すると巧く表示されるのですが、
JLabel.setTextで表示すると、後ろから1桁か2桁しか表示されません。
どうすれば全部表示されますか?
0297デフォルトの名無しさん2007/07/02(月) 18:13:19
Java始めて半年の初心者です。
今は秀丸を使っているのですが、
上級者の方は後々「Java専用プログラミングエディタ」みたいなのを使い始めるのでしょうか。
0298デフォルトの名無しさん2007/07/02(月) 18:21:20
>>296
どうやってMD5をかけたか、MD5をかけた後の変数の型、
System.out.print()した方法、setText()した方法をコードで示しましょう。

それから、MD5は暗号ではないです。

0299デフォルトの名無しさん2007/07/02(月) 18:22:03
>>297
さいきんはEclipseを使う人が多いかもしれない。
0300デフォルトの名無しさん2007/07/02(月) 18:23:11
>>296
digestをbyte配列で得てprintの方は順番に配列要素を表示していってるから全部表示されて、
JLabelの方には配列要素を順番に引数としてsetTextでセットしているから、
結局最後の配列要素しかJLabelには現れないというオチだったり。
もしそうなら、setTextはappendTextでないということは分かってないよね?
0301デフォルトの名無しさん2007/07/02(月) 18:26:09
eclipseは別にJava専用プログラミングエディタではないと思うが
>>297
自分が慣れたエディタを使えばええやん
0302デフォルトの名無しさん2007/07/02(月) 18:27:00
javaファイルからJavacsriptって動かせる?
xmlHttpRequest使いたいんだけど。
通信ってURLConnection使うしかない?
0303デフォルトの名無しさん2007/07/02(月) 18:39:23
>>302
rhino
0304デフォルトの名無しさん2007/07/02(月) 19:28:35
XmlHttpRequestはXML Extrasの成果だろ
0305デフォルトの名無しさん2007/07/02(月) 20:52:25
GWT
0306デフォルトの名無しさん2007/07/02(月) 20:58:11
ていうかURLConnectionから開いたInputStreemからDOM構築すれば良いだけだろ?
それかDOM Level 3 Load and Save使えよ。
0307デフォルトの名無しさん2007/07/02(月) 20:58:36
>>297
そろそろEclipseに乗り換えてもいいと思うよ
禿丸使うよりも生産性が上がる
0308デフォルトの名無しさん2007/07/02(月) 21:48:50
>>297
いきなりeclipseは導入で手間取りそうだね。
詳細なリファクタリングやコードフォーマットを頻繁に行わないならnetbeansでも良いと思う。

ヴュジュアル主体の開発とテキスト主体の開発っていうコンセプトの違いは大きいから選んだ方が良いけど。


プロトタイプでっち上げてそれをリファクタリングしまくりながら肉付けしていき開発する俺には
リファクタリング・フォーマッティング・ドキュメンテーションの面でnetbeansはかなり効率悪い。

けどGUI部分は書きたくないしリファクタリングなんてどうでもいいぜ!って人ならnetbeansの方が効率良い。

netbeansでGUI組んでeclipseでリファクタリングでも良いかも。
0309お願い!!2007/07/02(月) 23:16:47
こんばんは。

WEBアプリケーションでよくファイルアップロード機能があると思います。
その仕組みとして直接クライアントで指定したファイルを
サーバにアップロードしないでDBにBLOGなどで登録は可能でしょうか?

可能であればその仕組みを教えてください。
よろしくお願い致します。
0310デフォルトの名無しさん2007/07/02(月) 23:39:00
日本語でおk
どっちにしてもサーバは使うことになると思うが。
0311デフォルトの名無しさん2007/07/02(月) 23:43:24
現在、C++のプログラムをJAVAに書き換えようとしているのですが、
C++で使われている構造体をJAVAで再現することは可能でしょうか?
もしそのまま流用して動作するのであれば有難いのですが・・・。
宜しくお願い致します。
0312デフォルトの名無しさん2007/07/02(月) 23:44:55
>>309
FTP使えば?
0313デフォルトの名無しさん2007/07/02(月) 23:46:40
>>309
マルチ乙
0314お願い!!2007/07/02(月) 23:51:59
>どっちにしてもサーバは使うことになると思うが。
すみません。

サーバはAP、DBともに使うのですが、
どちらのサーバにも物理ファイルをアップロードしないで
クライアントにあるファイルを直接バイナリ変換して
DBに登録に登録出来るかが知りたかったのです。
0315デフォルトの名無しさん2007/07/02(月) 23:53:51
>>314
クローズドなシステムだったら署名つきJavaApplet上で
JDBCでBLOBデータを流す感じかな。

とりあえず日本語の勉強しておいたほうがいい。
0316デフォルトの名無しさん2007/07/03(火) 00:16:26
作った後のこと考えるとJWSの方が楽だろうね。

ファイルを直接バイナリ変換ってなに?
普通バイナリをBase64でテキストにエンコードするんじゃないの?
0317デフォルトの名無しさん2007/07/03(火) 00:51:49
「アップロードしない」の意味がわからん。
バイナリ変換と言ってるが何をバイナリ変換するんだ?
アップロードされてないものを変換できないぞ。
0318デフォルトの名無しさん2007/07/03(火) 01:18:54
>>314
アップロードしない → サーバにデータを送らない → サーバのDBに登録できない
0319デフォルトの名無しさん2007/07/03(火) 01:26:28
物理ファイルをアップロードする → HDDから当該ファイルのセクタの磁気材料をひっぺがしてサーバの投入孔に入れる
0320デフォルトの名無しさん2007/07/03(火) 01:45:00
>>314
クライアントにDBをインストールしてそこに目的のファイルをINSERT
↓
バックアップファイルを作成
↓
サーバにFTPでバックアップファイルを転送
↓
サーバのDBにリストア
0321デフォルトの名無しさん2007/07/03(火) 01:52:17
英文の書かれたtxtファイルがあって、そこに出現する英単語の出現頻度をカウントして、
降順にソートした状態で出力したいのですが、どのようにすればよいのでしょうか?

TreeMap使えばいいのかなーと思ったのですが、どうやってカウントしていけばいいのかというところで
ちょっとわからなくなってしまって・・・
0322デフォルトの名無しさん2007/07/03(火) 02:00:22
英単語をキーにして出現頻度をバリューにして出現するたびに
マップを検索してなければその単語をキーにして頻度を1にして新規に加えて
あればその単語の頻度を1増やす
0323デフォルトの名無しさん2007/07/03(火) 02:01:11
TreeMap#size() じゃダメなの?
0324デフォルトの名無しさん2007/07/03(火) 02:06:59
コレクションに入れられるのは参照型なので
出現頻度はIntegerなどのラッパークラスを使って頻度更新のたびに入れ替えていくか
new int[1]した配列を入れてint[0]の値を更新していくか
その辺りは自分のポリシーで
0325デフォルトの名無しさん2007/07/03(火) 03:20:07
なんとなく AtomicInteger を使ってみるとか
0326デフォルトの名無しさん2007/07/03(火) 08:20:15
何?この素人集団w
0327デフォルトの名無しさん2007/07/03(火) 09:23:48
流れぶった切るけど前944であがったJCursesってちゃんとつかえるの?

JNIのロード方法が特殊でjarに固めるとロード時にNoClassDefFoundErrorが出るし、固めずに実行するとExceptionInInitializerErrorが出る。

ちゃんと使えてる人居たらどうやって使ってるか教えてほしい。

うちの環境はjdk6u1とwin用JCurses 0.9.5
0328デフォルトの名無しさん2007/07/03(火) 16:35:10
>>325
無駄では?
0329デフォルトの名無しさん2007/07/03(火) 17:08:21
>>325
並行処理やるわけでもないのに何でそんなのが必要になるんだよw
0330デフォルトの名無しさん2007/07/03(火) 18:18:22
単語を見つけるたびにスレッド一つ作って実行したりして。w
0331デフォルトの名無しさん2007/07/03(火) 18:39:15
>>328-330
”なんとなく” という単語に俺が言いたいことを全部押し込めたわけだが
0332デフォルトの名無しさん2007/07/03(火) 19:51:04
不可逆圧縮だったようです。
笑いどころも無いので皆さん解凍できなかった様子。
0333デフォルトの名無しさん2007/07/03(火) 21:49:12
java.lang.thread
というエラーの解決法教えてくださいm(_ _)m
0334デフォルトの名無しさん2007/07/03(火) 21:50:20
>>333
エラーは何ですか?
0335デフォルトの名無しさん2007/07/03(火) 21:50:58
という莫迦がキてますよ
03363352007/07/03(火) 21:51:56
すまん>333ニダ
0337デフォルトの名無しさん2007/07/03(火) 21:54:50
>>333
解決方法は質問じゃなくて自分で勉強することだろうな
0338お願い!!2007/07/03(火) 22:00:08
本日色々調べてみました。
javaでのファイルアップロードの仕組みとして
一般的にクライアントで指定したファイルをサーバに
一度アップロードしてからデータベースへ
BLOB(バイナリラージオブジェクト)で登録するようです。

ただし、私の知りたいその2段階で行う処理を
サーバに一度もファイルを置かずに1段階で
データベースに登録が技術的に可能なのかが解かりませんでした。。
0339デフォルトの名無しさん2007/07/03(火) 22:12:13
>>338
可能
0340お願い!!2007/07/03(火) 22:14:03
やっぱり可能ですか?
出来そうな感じもするのですが
実装方法はどうしたらいいのでしょうか?
0341デフォルトの名無しさん2007/07/03(火) 22:15:20
>>340
ちったあ調べれ
0342デフォルトの名無しさん2007/07/03(火) 22:16:46
>>338
一度もサーバーに置かないというのは物理ファイルのことだよな?

それならば、サーバーの能力、転送量次第
十分に運用に耐えられると判断したならば、Servlet内でbyte[]やTempファイルなんかをメモリ上に作成すればいい
例えば数Kバイト程度のCSVファイルが1時間に1つ程度送られてくるとかならば、オンメモリでも問題ないだろう
だけど、例えばそれが月頭の特定時間に1万ファイル/分で転送されてくるならば止めた方がいいだろう
0343デフォルトの名無しさん2007/07/03(火) 22:21:00
今勉強中の者ですが、
8進数や16進数など現場でつかいますか?
0344デフォルトの名無しさん2007/07/03(火) 22:25:06
16進数は使いまくり。
8進数は使わない。
0345デフォルトの名無しさん2007/07/03(火) 22:27:09
>>343
君が将来勤める工事現場では8進数も16進数もたぶん使わないんじゃないかな
0346デフォルトの名無しさん2007/07/03(火) 22:30:56
16進? java.awt.Colorくらいかね?w
0347デフォルトの名無しさん2007/07/04(水) 01:49:01
>>343
chmod 755 hogehoge.cgi

とかは 8進数
0348デフォルトの名無しさん2007/07/04(水) 03:53:14
GUIとGraphicsについて初心者向けに解説しているサイトを教えてくださいmm
0349デフォルトの名無しさん2007/07/04(水) 09:39:04
>>348
やだ
0350デフォルトの名無しさん2007/07/04(水) 09:48:55
バイナリエディタって何?って奴らばっかだな
0351デフォルトの名無しさん2007/07/04(水) 13:18:31
>>348
これからも聞きたいときは聞きに来ていいんだよ

答えたいときに答えるから
0352デフォルトの名無しさん2007/07/04(水) 13:55:35
>>348
http://ja.wikipedia.org/wiki/%E3%82%B3%E3%83%B3%E3%83%94%E3%83%A5%E3%83%BC%E3%82%BF%E3%83%BC%E3%83%BB%E3%82%B0%E3%83%A9%E3%83%95%E3%82%A3%E3%83%83%E3%82%AF%E3%82%B9
http://ja.wikipedia.org/wiki/%E3%82%B0%E3%83%A9%E3%83%95%E3%82%A3%E3%82%AB%E3%83%AB%E3%83%A6%E3%83%BC%E3%82%B6%E3%82%A4%E3%83%B3%E3%82%BF%E3%83%95%E3%82%A7%E3%83%BC%E3%82%B9
0353デフォルトの名無しさん2007/07/04(水) 21:05:03
>>343
16進はよく使う。8進はあまり使わないが>>347のように使うことはある。
0354デフォルトの名無しさん2007/07/04(水) 21:35:56
それ Java か?
0355デフォルトの名無しさん2007/07/04(水) 22:36:41
http://java.sun.com/j2se/1.5.0/ja/docs/ja/guide/rmi/hello/hello-world.html
Sunのホームページにあったサンプルですが、動きません。

RMIサーバ側で「Server exception:java.rmi.ServerException: RemoteException occurred in server th
read; nested exception is:」という例外が発生します。
ファイアウォールはブロック解除しましたが、結果は同じです。

昔は簡単にうごいたのに、Java1.5の仕様でしょうか?

スペック
OS:WindowsXP SP2
J2SDK:Java1.5.0_12
J2RE:Java1.5.0_12

0356デフォルトの名無しさん2007/07/04(水) 22:37:46
もみあげ
0357デフォルトの名無しさん2007/07/04(水) 22:39:16
>>335
その nested exception is: の後が重要。そっちも書いて
03583552007/07/04(水) 22:44:08
Server exception:java.rmi.ServerException: RemoteException occurred in server th
read; nested exception is:
java.rmi.UnmarshalException: error unmarshalling arguments; nested excep
tion is:
java.lang.ClassNotFoundException: example.hello.Hello
java.rmi.ServerException: RemoteException occurred in server thread; nested exce
ption is:
java.rmi.UnmarshalException: error unmarshalling arguments; nested excep
tion is:
java.lang.ClassNotFoundException: example.hello.Hello
03593552007/07/04(水) 22:44:50
at sun.rmi.server.UnicastServerRef.oldDispatch(UnicastServerRef.java:385
)
at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:240)
at sun.rmi.transport.Transport$1.run(Transport.java:153)
at java.security.AccessController.doPrivileged(Native Method)
at sun.rmi.transport.Transport.serviceCall(Transport.java:149)
at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:4
66)
at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport
.java:707)
03603552007/07/04(水) 22:46:25
at java.lang.Thread.run(Thread.java:595)
at sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(Unknow
n Source)
at sun.rmi.transport.StreamRemoteCall.executeCall(Unknown Source)
at sun.rmi.server.UnicastRef.invoke(Unknown Source)
at sun.rmi.registry.RegistryImpl_Stub.bind(Unknown Source)
at example.hello.Server.main(Server.java:24)
Caused by: java.rmi.UnmarshalException: error unmarshalling arguments; nested ex
ception is:
java.lang.ClassNotFoundException: example.hello.Hello
03613552007/07/04(水) 22:47:08
at sun.rmi.registry.RegistryImpl_Skel.dispatch(Unknown Source)
at sun.rmi.server.UnicastServerRef.oldDispatch(UnicastServerRef.java:375
)
at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:240)
at sun.rmi.transport.Transport$1.run(Transport.java:153)
at java.security.AccessController.doPrivileged(Native Method)
at sun.rmi.transport.Transport.serviceCall(Transport.java:149)
at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:4
66)
at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport
03623552007/07/04(水) 22:47:58
.java:707)
at java.lang.Thread.run(Thread.java:595)
Caused by: java.lang.ClassNotFoundException: example.hello.Hello
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
at java.lang.Class.forName0(Native Method)
03633552007/07/04(水) 22:48:42
at java.lang.Class.forName(Class.java:242)
at sun.rmi.server.LoaderHandler.loadProxyInterfaces(LoaderHandler.java:707)
at sun.rmi.server.LoaderHandler.loadProxyClass(LoaderHandler.java:651)
at sun.rmi.server.LoaderHandler.loadProxyClass(LoaderHandler.java:588)
at java.rmi.server.RMIClassLoader$2.loadProxyClass(RMIClassLoader.java:628)
at java.rmi.server.RMIClassLoader.loadProxyClass(RMIClassLoader.java:294)
at sun.rmi.server.MarshalInputStream.resolveProxyClass(MarshalInputStream.java:238)
at java.io.ObjectInputStream.readProxyDesc(ObjectInputStream.java:1500)
at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1463)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1699)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1305)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:348)
... 9 more

以上です。解析お願いします。
0364デフォルトの名無しさん2007/07/04(水) 22:57:31
なげーよww
java.lang.ClassNotFoundException: example.hello.Hello だ、原因はStackTraceは一番下(元の)例外を読むのが原則
サーバの方でパスが通っている場所にクラスファイルがない
0365デフォルトの名無しさん2007/07/04(水) 23:03:22
>>364
調べてみます。。。でもこんな感じなんですよね〜
D:.
│ a.bat
│ コマンド プロンプト.lnk
│
└─example
└─hello
Client.class
Client.java
Hello.class
Hello.java
Server.class
Server.java
0366デフォルトの名無しさん2007/07/04(水) 23:06:09
クラスパスもわかんないやつがRMIって。
03673552007/07/04(水) 23:09:00
>>366
動かしてみてびっくりでしたww
03683552007/07/04(水) 23:19:26
C:\Program Files\Java\jdk1.5.0_12\bin直下に置いたら動いたww
0369デフォルトの名無しさん2007/07/04(水) 23:30:08
Caused by: java.lang.ClassNotFoundException: example.hello.Hello
が原因を教えてくれているな。
エラーメッセージには答えそのものが書いてあることが多いからよくよめ
0370デフォルトの名無しさん2007/07/04(水) 23:32:09
>>368
まて、bin直下にクラスファイルを置かないと動かないってどういうことだよ!
0371デフォルトの名無しさん2007/07/04(水) 23:35:48
>>370
そういうことだよ
0372デフォルトの名無しさん2007/07/04(水) 23:43:32
>>371
そういうことじゃなくて、rmiregistry.exeを>>365のディレクトリ上に配置すればイイーンダヨ♪
0373デフォルトの名無しさん2007/07/05(木) 01:35:07
済みません
以下のプログラムをコマンドプロントで実行することは可能ですか?
可能な場合はやり方を教えて頂けないでしょうか。

import java.applet.*;
import java.awt.*;
public class myclock extends Applet{
  Image fb;
  Graphics gg;

  public void init(){
    fb = createImage(200,200);
    gg = fb.getGraphics();
  }

  public void paint(Graphics g){
    /******時計のデザイン*******/
    gg.drawRect(5,5,190,190);
    g.drawImage(fb,0,0,this);
  }
}
0374 2007/07/05(木) 01:38:21
ある文字が英語のアルファベットかしりたいんですが、判別できるメソッドはないですか?
Character.isLetter(char)は日本語の文字にもtrueを返してしまいます。
0375デフォルトの名無しさん2007/07/05(木) 01:45:08
>>373
結論いうと可能。アプレットだよね。

ソースファイルに以下のコメント記述でアプレットタグの内容を書く。
/**
<APPLET>内容</APPLET>
*/

コンパイルしたら、appletviewer.exeというjavaの実行フォルダにある
ビューワを使えば読める。

こんな感じ
c:\>appletviewer "ソースファイル名"

ただし、ブラウザと多少動作が違うから確認程度で我慢すること。
詳しくはぐぐれ

こことかどうよ
http://www.itlb.te.noda.sut.ac.jp/~takuma/lecture/java/step1.html
0376デフォルトの名無しさん2007/07/05(木) 01:53:33
>>374
あったようななかったような、、A〜Z、a〜zの範囲なら自作のAPIを作っても手間がそんなにかからないと思うけど。

http://charset.7jp.net/unicode2.html


0377デフォルトの名無しさん2007/07/05(木) 01:59:02
>>375
ありがとうございます!
0378デフォルトの名無しさん2007/07/05(木) 02:00:24
Cには関数ポインタなるものが存在しますが、Javaにも似たような使い方ができるコーディング方法ございますか?
0379デフォルトの名無しさん2007/07/05(木) 02:06:44
そろそろできる
0380デフォルトの名無しさん2007/07/05(木) 02:10:14
Methodsクラスをなめるように操作すれば出来なくもない
0381デフォルトの名無しさん2007/07/05(木) 02:41:15
とりあえず、高橋麻奈のやさしいJAVAを一冊読んだのですが、
次はなにかを作りながら覚えて言ったほうがいいかなと思ったのですが

なにかいい参考書や方法はあるでしょうか?

みなさんはどういうステップJAVAを学んでいかれたのでしょうか?
よかったら教えてください。
0382デフォルトの名無しさん2007/07/05(木) 03:02:31
>>381
資格取ったり仕事で使ったりしたから、いろいろ知ってるけど。
どうでもいいような事とかJavaで出来ること、出来るけど困難なこと、そもそも出来ないこと
の区別が付けることが出来たら、お客さんに気に入られるよってアドバイスする俺はSE兼PGです。
趣味の範囲ならアソシエイツを取る勢いで浅く広く覚えれば面白いと思うよ。深く追求すると嫌になるから。
http://suned.sun.co.jp/JPN/certification/sjcaobj.html
0383デフォルトの名無しさん2007/07/05(木) 09:35:44
お客さんに気に入られてアドバイスしているが
ほとんど無報酬のボランティアで答えている俺は
SE兼PG兼奴隷です。
0384デフォルトの名無しさん2007/07/05(木) 10:37:04
JavaってFTPクライアントはカンタンにできると思っていましたが
ソケットで自作しないとだめなんでしょうか?
0385デフォルトの名無しさん2007/07/05(木) 10:57:13
標準ライブラリのみなら、そういう認識であってる。
外部のライブラリ使えば簡単にできる。commons netとか
ttp://jakarta.apache.org/commons/net/
0386デフォルトの名無しさん2007/07/05(木) 11:37:20
>>378
Java "Script"なら関数オブジェクトを変数に入れて
コールすれば内部処理的にも関数ポインタに近いんだけどなぁ・・・
クロージャが追加されれば似たような事が出来るけど
Javaのクロージャってレキシカルスコープ引き継ぐんだろうか?

>>381
やさしいjavaをきれいさっぱり忘れて他の本をじっくり読む。マジオヌヌメ。
0387デフォルトの名無しさん2007/07/05(木) 12:03:03
質問させていただきます
htmlで<textarea>に入力した文字をdatファイルに出力しようとしています、正確にはJavaではなくJSPを使っていますが
・Htmlソース部分
<form action="test.jsp"method="POST">
<textarea rows=5 cols=60 name="honbun" wrap="off"></textarea>
<input type="submit"name="save"value="送信">
</form>
・Javaソース部分
String path = "フォルダパス";
String fname = "out.dat";
String gen = request.getParameter("honbun");
String hon = gen.replaceAll("\n","<br>");
BufferedWriter logwrite = new BufferedWriter(new FileWriter(path+ File.separatorChar +fname,true));
logwrite.write(hon);
logwrite.newLine();
logwrite.close();

改行コードを<br>に変換してdatファイルに出力しようとしていますが、<br>は付与されますがどうしても改行コードが残ってしまいます
datファイル内でも改行されないように出力出来ないでしょうか?(例えるなら、ギコナビのスレッドdatファイルの様に)
datファイルを見るのにはTeraPadを使用していますが、メモ帳では改行されていないように見えます
もしかするとTeraPadで見るのが原因なのでしょうか・・・しかしギコナビのdatファイルはTeraPadでも改行されずに表示されます
0388デフォルトの名無しさん2007/07/05(木) 12:10:35
>>387
\rが入ってるとか?
0389デフォルトの名無しさん2007/07/05(木) 12:11:16

LFだけ消して
CRLFを消してないから
CRが残ってる

03903872007/07/05(木) 12:21:08
なるほど、改行コードは\nしか使っていなかったので盲点でした
\rを消して無事に一行で出力することができました
>>388さん>>389さんご回答ありがとうございました!
0391デフォルトの名無しさん2007/07/05(木) 13:04:01
\nはエスケープシーケンスで改行コードは別だよね?
Javaのばあい、動作してるプラットフォームの改行コードに変換されるんじゃなかったけ?
0392デフォルトの名無しさん2007/07/05(木) 13:25:24
1行目も2行目もNo
0393デフォルトの名無しさん2007/07/05(木) 13:28:12
ブラウザから送ってきたものそのままだと思うが、
ブラウザがどういった改行コードを送ってくるかは環境依存?それとも何か決まりはある?
■ このスレッドは過去ログ倉庫に格納されています