- 締切済み
Ruby初心者です。
Rubyでネットワークドライブにあるファイルを処理しようとすると、No such file or directoryが出てしまうのですが、原因がわかりません。 環境は、Window7のノートパソコンで、Ruby1.9.1を使用しています。ちなみに会社にあるデスクトップのPCでは同じように設定しても問題なく処理ができます。これはRubyの問題というよりもWindow7の問題なのでしょうか? 何かわかる方がいらしたら、教えてください。
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- tatsu99
- ベストアンサー率52% (391/751)
回答No.3
>プログラムの該当する部分を絶対パスで記述することで解決しました。 良かったですね。問題が解決できて何よりです。
- tatsu99
- ベストアンサー率52% (391/751)
回答No.2
たぶん Windows7の問題だと思います。 その問題のPCで、コマンドプロンプトから、ネットワークドライブにあるファイルを操作するとどうなりますか。 そのネットワークドライブにあるファイルをZ:\AAA\bbb.txt として 例えばコマンドプロンプトから COPY Z:\AAA\bbb.txt C:\bbb.txt とすると Cドライブにbbb.txtが作成されますでしょうか? もし、作成されればRubyの問題、されなければWindows7の問題になります。 Rubyの問題の場合は、スクリプトから問題の部分のみの部分を取り出して、別のスクリプトを作成し それを、コマンドプロンプトで実行すれば、更に原因が追求できるかと思います。
- notnot
- ベストアンサー率47% (4900/10359)
回答No.1
Windows7上のRuby1.9.1は使ったこと無いですが、さすがにそんなバグはないと思うので、あなたの書いたプログラムが悪いのでは?
お礼
ありがとうございます。 コマンドプロンプトからのファイルコピーは問題なくできました。 ということは、Rubyの問題ですね。 ご指摘いただいたように、部分的に取り出して、調べてみます。
補足
調べた結果、原因がわかりました。 Rubyの記述の中で相対パスで記述している部分が原因でした。 Windows XPやWindows7のデスクトップでは問題がないのですが、Windows7のノートPCだけで起こる現象のようです。 プログラムの該当する部分を絶対パスで記述することで解決しました。