- 締切済み
TextFieldParserのエラーについて
こちらに失礼致します。 現在作成中のプログラムに、 ボタンクリックイベントでCSVファイルを開き、動的にSQLを発行し、DBに登録していく処理があるのですが、 開発環境でのデバッグ実行では問題なく実行できますが、サーバにアップして実行すると下記のロジックでエラーが出てしまいます。 サーバに開発環境を作り、デバッグしてみましたがエラーは出ませんでした。 Using MyReader As New TextFieldParser(strFileName, System.Text.Encoding.GetEncoding("Shift_JIS")) エラー内容としては \Documents and Settings\Administrator.50001\デスクトップ\user.csv' が見つかりませんでした。 サーバには.netframework3.5をインストール済みですが、エラー画面の最下段に バージョン情報: Microsoft .NET Framework バージョン:2.0.50727.1433; ASP.NET バージョン:2.0.50727.1433 と出てきます。 .NET Framework3.5がうまく入っていないのが問題でしょうか・・・ iisの「既定のWEBサイトの登録」でプロパティにて、 ASP.NETタブでは3.5が選択肢にありません。 エラーの解決方法がわからず、いきずまっております。 どなたかご存知の方がいらっしゃいましたらご教授頂けますでしょうか。 よろしくお願い致します。 サーバ環境 OS:Windows2003server SP2 開発環境 OS:WindowsXP VisualWebDeveloper2008 Express
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- Xaval
- ベストアンサー率58% (61/105)
.NET 3.5 は.NET2.0からライブラリが増えただけで、ランタイムは2.0のままです。 まず、ファイルをオープンする前に、ファイルの存在チェックを行っていると思いますが、そこは通過するのでしょうか? System.IO.File.Exists(strFileName) ファイルがないのでは? また、Administrator.50001のデスクトップ上のファイルなのはなぜ? "C:\"が抜けてるのも気になります。アプリケーションのあるドライブのルートから\Document and .... になってたりして。
お礼
Xavalさんありがとうございます。 パスはFileUploadコントロールを使用して動的に作成していたのですが、クライアントからの相対パスがサーバ側に渡っていたのが原因でした。 strFileNameを固定でサーバ側の C:\・・・・・・・・ としたら取り込み出来ました。 そもそもが理解できていなくて恐縮ですが、例えばクライアント側でファイルを指定して、そのファイルを編集しながらDBにアップロードしたい場合は、 一度FTP等でサーバ側にファイルを移動し、サーバ側のファイルを開いて操作するものなのでしょうか? 当初の質問と変わってきてしまい申し訳ございませんが、ご存知でしたらご教授頂けますとありがたいです。