- PR -

外部ファイル取り込み

投稿者投稿内容
新米くん
会議室デビュー日: 2003/12/11
投稿数: 8
投稿日時: 2003-12-11 20:08
UKさん、質問に答えて頂きありがとうございます。
>まずは、HTTPリクエスト/レスポンスの仕組みから学ぶべきだと思います。
言われるとおり、勉強不足です。これを機会に勉強しようと考えております。
>ではまずその人にどのような方法を想定しているかを聞いてください。
そうします。以前にこの機能を実現した人に話を聞く機会を与えて頂きました。
そのプロジェクトでは確認は取れていないのですが、そういった外部のクラスを使って
いないそうなのです。本当かどうかはわかりませんが、色々とお聞きしようと思ってます

たーぞう
ぬし
会議室デビュー日: 2003/08/08
投稿数: 317
お住まい・勤務地: お花畑
投稿日時: 2003-12-11 20:38
1.ファイル名を固定してみる
2.formタグに「enctype="multipart/form-data"」を追加する
3.サーブレット側で読み込むときに
   BufferedReader in = new BufferedReader(new InputStreamReader(request.getInputStream(), "JISAutoDetect"));
   int ch = in.read();
  で読み込む

でやってみるとどうなりますか?
新米くん
会議室デビュー日: 2003/12/11
投稿数: 8
投稿日時: 2003-12-16 16:12
初心者です。こんにちわ。
たーぞうさん、せっかく考えて頂いたのに、返答が遅れて申し訳ありませんでした。
たーぞうさんが書かれた方法で実装しますと、数値としては「45」が取得できます。
この数字は一体何を意味しているのでしょう。宜しければ教えて頂けますでしょうか。
それと、私事になってしまうのですがファイルアップロードは現在実装中です。
以前、外部のクラスを使わず実装していたといった発言をしてしまいましたが、
それは違ってました。よく話題に出てきているクラスを使って実装してたようです。
何とか、ファイルをサーバ上に作成できたようですが、少しおかしな動きをする時が
あります。また、質問させてもらうかもしれませんがその時は宜しくお願いします。
かずくん
ぬし
会議室デビュー日: 2003/01/08
投稿数: 759
お住まい・勤務地: 太陽系第三惑星
投稿日時: 2003-12-16 16:55
引用:

たーぞうさんが書かれた方法で実装しますと、数値としては「45」が取得できます。
この数字は一体何を意味しているのでしょう。宜しければ教えて頂けますでしょうか。


そーゆーときこそ、APIリファレンスで確認してくだされ。
# しかし何をやって「45」が返ってきたのか不明だ。
# System.out.println(in.read())のことだろうか…。
新米くん
会議室デビュー日: 2003/12/11
投稿数: 8
投稿日時: 2003-12-18 18:43
初心者です。こんばんわ。
現在、サーバ側で取得した配列のデータをどのようにして実装すればJSP側で取得できる
のかといった問題に躓いております。そこで、皆さんのアドバイスをお願いします。
サーバ側で以下の記述があります。
// アップロードデータがなくなるまで繰り返す
while ((line = reader.readLine()) != null) {
// Debug -->
Debug.println("Record [" + line + "]");
// <-- Debug
String[] element = null; // レコードのカラム配列
String delimiter = ",";
try {
// レコードを分割し配列に格納する
element = VariableUtility.devideString(line, delimiter, column_name.length);
} catch (IllegalArgumentException iae) {
// Debug -->
Debug.println("Record Format Error");
// <-- Debug
}

list.add(element);
} catch (FileNotFoundException fnfe) {
Debug.println("File Not Found");
fnfe.printStackTrace();
throw new Exception(fnfe.getMessage());
} catch (UnsupportedEncodingException uee) {
Debug.println("Encodeing Error");
uee.printStackTrace();
throw new Exception(uee.getMessage());
} catch (IOException ioe1) {
Debug.println("Read Error");
ioe1.printStackTrace();
throw new Exception(ioe1.getMessage());
}finally {
//アップロードデータリストを次画面に渡す
request.setAttribute("upload_data",list);

長々と貼りつけてしまいましたが、結局は最後のラインでsetAttributeした配列データ
をJSP側で取得するにはどのようにすれば良いのかをお聞きしたいと思っております。
自分としましては、
string a = stirng.valueOf(request.getAttribute())を使おうと考えていたのですが
それでは、配列のデータが取得できないようです。
以上の点を宜しくお願いします。

[ メッセージ編集済み 編集者: 新米くん 編集日時 2003-12-20 00:40 ]
uk
ぬし
会議室デビュー日: 2003/05/20
投稿数: 1155
お住まい・勤務地: 東京都
投稿日時: 2003-12-18 18:58
引用:

新米くんさんの書き込み (2003-12-18 18:43) より:
長々と貼りつけてしまいましたが、結局は最後のラインでsetAttributeした配列データ
をJSP側で取得するにはどのようにすれば良いのかをお聞きしたいと思っております。
自分としましては、
string a = stirng.valueOf(request.getAttribute())を使おうと考えていたのですが
それでは、配列のデータが取得できないようです。
以上の点を宜しくお願いします。


そもそもlistが何型のデータだか不明なわけですが、一応Collection型として考えると、

Collection list = (Collection)request.getAttribute("upload_data");
for(Iterator i = list.iterator();i.hasNext() {
String a = (String)i.next();
何らかの処理
}

てな感じで使えると思います。まず、配列(っていうかコレクションですよね?)の利用方法を
学習したほうがいいと思います。
新米くん
会議室デビュー日: 2003/12/11
投稿数: 8
投稿日時: 2003-12-19 16:35
UKさん、またまたの書込みありがとうございます。
言われるとおり自分のキャストの仕方が間違っておりました。
requestで取得したarraylist型のデータをstring型に変換するという基礎中の基礎の
所で躓いておりました。今回の機能を通しまして、まだ基礎的なことがあまり出来て
いない事を痛感いたしました。また、つまらない事で質問をさせて頂くかもしれませんが
その時は宜しくお願いします。

スキルアップ/キャリアアップ(JOB@IT)