C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[6]: デバッグ時に認識できるファイルが認識できない


(過去ログ 32 を表示中)

[トピック内 7 記事 (1 - 7 表示)]  << 0 >>

■15303 / inTopicNo.1)  デバッグ時に認識できるファイルが認識できない
  
□投稿者/ ゆずぽん (11回)-(2008/03/10(Mon) 21:26:31)

分類:[ASP.NET (C#)] 

【環境】ASP.NET(C#) Visual Studio2005

以前にcsvファイルをデータベースに取込む方法で質問させていただいた者です。
その後、ご教示いただいたお蔭で解決をしたのですが、
デバッグ時に認識できていたcsvファイルがUAT環境で認識することができません。

ファイルが存在しないというエラー表示が出てしまいます。

if (File.Exists(@"C:\a.csv"))
{
 データベースに取込処理を行う
}
else
{
  エラー表示 ファイルが存在しない
}

何か解決のヒントありましたら教えていただけませんでしょうか?
よろしくお願い致します。

引用返信 編集キー/
■15306 / inTopicNo.2)  Re[1]: デバッグ時に認識できるファイルが認識できない
□投稿者/ やじゅ (227回)-(2008/03/10(Mon) 23:28:32)
やじゅ さんの Web サイト
No15303 (ゆずぽん さん) に返信
> デバッグ時に認識できていたcsvファイルがUAT環境で認識することができません。
> ファイルが存在しないというエラー表示が出てしまいます。
> if (File.Exists(@"C:\a.csv"))

ユーザー受け入れテスト(UAT)環境ですね。
「ファイルが存在しない」という、そのまんまなエラーな気がします。
CSVに限らず、他のファイルでも試してみてはいかがでしょう。
引用返信 編集キー/
■15309 / inTopicNo.3)  Re[2]: デバッグ時に認識できるファイルが認識できない
□投稿者/ 片桐 (76回)-(2008/03/10(Mon) 23:42:39)
片桐 さんの Web サイト
取り込みたいファイル、そのCSV取り込み処理が動く、サーバー上のC:\a.csv、でしょうか?
デバッグ時は自分のPCだけど、ユーザーテスト時はそのASPが動作しているサーバーが
プログラムから見たCドライブなんじゃないでしょうか?
引用返信 編集キー/
■15314 / inTopicNo.4)  Re[3]: デバッグ時に認識できるファイルが認識できない
□投稿者/ ゆずぽん (12回)-(2008/03/11(Tue) 00:37:54)
やじゅ様、片桐様ご回答ありがとうございます。

> デバッグ時は自分のPCだけど、ユーザーテスト時はそのASPが動作しているサーバーが
> プログラムから見たCドライブなんじゃないでしょうか?

その通りです。

サーバーにアップロードしないといけないことが分かっていませんでした。
調べたところFileUploadを使用すればできそうな感じなので試してみようと思います。
FileUpload自体は知っていましたが、使い方を分かっておらず
こういう時に使うのかと今理解できました。

引用返信 編集キー/
■15319 / inTopicNo.5)  Re[4]: デバッグ時に認識できるファイルが認識できない
□投稿者/ ゆずぽん (13回)-(2008/03/11(Tue) 02:57:02)
HttpPostedFile posted = FileUpload1.PostedFile;
            if (posted.FileName != "")
            {
                posted.SaveAs("C:\\" + System.IO.Path.GetFileName(posted.FileName));
            }
            string uploadfile = posted.FileName;

上記のソースでFileNameを獲得しようとしたのですが、エラーになってしまいました。
書籍に「サーバにファイルを保存するときは、そのフォルダにファイルを作成する権限がないとエラーになります」
という記述があり、これが原因ではないかと思います。
セキュリティ上、権限を与えることはあまりよくないようなので別の方法をご教授いただけないでしょうか。

引用返信 編集キー/
■15321 / inTopicNo.6)  Re[5]: デバッグ時に認識できるファイルが認識できない
□投稿者/ はつね (501回)-(2008/03/11(Tue) 07:16:26)
No15319 (ゆずぽん さん) に返信

サーバーにファイルを保存するのが目的なのではなく、データベースに入れるのが目的
ですよね?
だとしたら、posted.SaveAsを行う必要があるのでしょうか。
HttpPostedFileの使い方はちゃんとヘルプや書籍なので調べてみましたか?
ファイルの大きさにもよりますが(あとコードがVBですが)保存しなくても次のように
やれば変数にファイルの内容が取得できませんか?(未確認)
Dim file As New System.IO.StreamReader(posted.PostedFile.InputStream)

引用返信 編集キー/
■15441 / inTopicNo.7)  Re[6]: デバッグ時に認識できるファイルが認識できない
□投稿者/ ゆずぽん (14回)-(2008/03/12(Wed) 20:13:07)
2008/03/12(Wed) 20:34:53 編集(投稿者)



No15321 (はつね さん) に返信

>
> サーバーにファイルを保存するのが目的なのではなく、データベースに入れるのが目的
> ですよね?
> だとしたら、posted.SaveAsを行う必要があるのでしょうか。
> HttpPostedFileの使い方はちゃんとヘルプや書籍なので調べてみましたか?
> ファイルの大きさにもよりますが(あとコードがVBですが)保存しなくても次のように
> やれば変数にファイルの内容が取得できませんか?(未確認)
> Dim file As New System.IO.StreamReader(posted.PostedFile.InputStream)
>
はつね様、ご回答ありがとうございます。
最後に書き込みをした後、1時間くらいしてから下記の方法で保存せずに読み込めることが分かり、
「できた!」と思ってご報告の書き込みをして解決済みフラグを立てたつもりでいたのですが
送信できていませんでした。
送信ボタンをクリックしないでそのまま寝てしまったようです。
さきほど見て気づきました。失礼致しました。

HttpPostedFileについても時間がある時に調べてみます。
この度アドバイスをいただいた皆様、ありがとうございました。

System.IO.Stream myStream;

myStream = FileUpload1.FileContent;
      System.IO.StreamReader reader = new System.IO.StreamReader(myStream,〜




解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -