UWSCでファイルを開く方法

このQ&Aのポイント
  • UWSCを使用してテキストファイルを開く方法について教えてください。
  • ファイルの場所情報を正しく指定する必要がありますか?
  • 初心者による質問ですが、どなたか教えていただけないでしょうか。
回答を見る
  • ベストアンサー

UWSCでファイルを開く方法

UWSCというソフトに関する質問です。 UWSCを使って、テキストファイルを開くにはどうすればよいのでしょうか? 戻値 = FOPEN( ファイル名, [オープンモード]) の関数を使うということなので、例えば、test.txtというファイルを開きたいときに、 fid = FOPEN("test.txt" , F_READ or F_WRITE) というスクリプトを使ったのですが、うまくいきません。 ファイル名にファイルのある場所の情報(C:\Users\taro\Desktop\uwsc48c1など)を入れる必要があるのでしょうか? それとももっと別の場所で間違っているのでしょうか? とても初歩的な質問で大変申し訳ないのですが、どなたかご教授いただけないでしょうか。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • queuerev2
  • ベストアンサー率78% (96/122)
回答No.1

UWSCについては当方も勉強を始めたばかりでまだ理解度はとても低いのですが、わかる範囲でお答えします。 ファイルをパスまで含めて指定すれば確実です。 たとえばtest.txtがC:\Users\taro\Desktop\uwsc48c1というフォルダの中にあるなら、 fid = FOPEN("C:\Users\taro\Desktop\uwsc48c1\test.txt" , F_READ or F_WRITE) と書けばうまくいくはずです。 質問文中の書き方のようにファイル名だけを指定した場合、ファイルはカレントディレクトリにあるものとみなされます。 カレントディレクトリは、GET_CUR_DIRという特殊変数に格納されていますので、試しに MSGBOX(GET_CUR_DIR) を実行してみるとカレントディレクトリがどこかわかります。 そのフォルダに開きたいファイルが入っていれば、ファイル名のみの指定でもエラーとならずにうまく開くことができるはずです。 (ディレクトリとフォルダの2つの用語を使ってしまいましたが、ここでは同じものと考えていただいて結構です)

tyawan00
質問者

お礼

丁寧なご回答ありがとうございました。うまくいきました。

関連するQ&A

  • UWSCでテキストファイルを開いて表示したい

    UWSCでテキストファイルやExcelファイルを開きたいのですが、 FOPEN関数を使っても、たとえばテキストファイルを開こうと思っても開けません。 これはなぜでしょうか? すべてのパソコンでダメでした。 OSはXPSP3、7SP1、です。 UWSCのバージョンは最新のバージョン(4.8e1)です。 UWSC.EXEのあるフォルダに、「test01.txt」を作成し、 fid=FOPEN("test01.txt",F_READ or F_WRITE) と書いても、絶対パスで、 fid=FOPEN("C:\Users\user01\Desktop\uwsc\test01.txt",F_READ or F_WRITE) と書いても、ダメでした。 その一行しか書いてないのがダメな原因なのでしょうか? 「C:\Users\user01\Desktop\uwsc\test01.txt」は コマンドプロンプトやファイルを指定して実行、からは開けます。 アンチウィルスソフトは一時的にOFFにしてもだめでした。 OS(XPSP3)を再インストールして、ネットにつながず、 セキュリティソフトなしでやってみてもダメでした。 多分、自分が何か勘違いをしているのだと思いますが、 FOPEN関数は、ファイルを開いて表示するものだと思っていましたが 違うのでしょうか? Webで検索すると、他のみなさんは開いているようなのですが・・・ ファイルのIDを取得するだけではだめで、ほかの記述も必要ということなのでしょうか? ゆくゆくはExcelのファイルを普通に開きたいのです。 COMで開くような事例もあったので、それは試してみましたが、 Office2003のセキュリティの「中」設定が無視されて 開いてしまい、Auto_Openマクロも無視されたりで、 使いたくありません。 「中」設定のまま、「マクロを実行させるダイアログ」を 表示してExcelファイルを開きたいのです。 でもその前にということで、テキストファイルを試しにと思ったのですが テキストファイルすら開けません。 何度かWeb検索しても一向に手がかりがつかめません。 大変すみませんが、どなたがご存知の方がいらっしゃったら、 よろしくご指導くださいませ。

  • (UWSC)ファイルを作るときに、任意のフォルダに作れますか?

    UWSCで、fopenでファイルを作れると思いますが、 ファイルはエグゼファイルと同じ場所に作られています。 任意のフォルダに作ることは可能ですか?

  • MATLABで配列をファイルへ書き込む方法

    現在MATLABについて勉強しているのですが、配列M(N×N、Nは任意)をファイル(.txtなど)に書き込む方法が分からず困っています。 fid=fopen('matrix.txt','wt'); fprintf(fid,'%6.4f',M); fclose(fid); このように書いているのですが、全要素が1行に並んでしまいます。 N行N列の形で配列をファイルに出力したいのです。 どなたか初心者でも理解できるようご教授お願い致します。

  • MATLABのファイル読み込みに関して

    こんにちは,今回MATLABでのファイル読み込みに関して質問したいことがあり書き込みました 現在in_1-C110.txt,in_1-C120.txt,......in_1-C190.txt'というファイルがあり,これらのファイルをまとめて読み込もうとして以下のようなコードを記述しました for a=1:9 %ファイルを読む fin=fopen(['in_1-C1' a '0.txt'],'r');     %a A=fscanf(fin,'%f %f %f %f %f %f %f',[7 inf]); fclose(fin); (略) end このように,ファイル名の最初と最後は共通なので,異なる部分のみをループさせて連続して読もうとしています ところが,この方法だとInvalid fid.と出てしまいます 調べてみると、意図したものでは%aのところが in_1-C110.txt in_1-C120.txt となるはずだったのですが,fscanfを抜いてこのファイル名のところだけ書き出すようにしてみると in_1-C1(変な文字)0.txt in_1-C1(変な文字)0.txt といったような変数の部分が文字化けを起こしていることがわかりました. したがって,ファイルが読めない原因がこれにあるのだと推察したのですが,解決方法がまったくわからない状態です この問題を解決する方法がわかる方がおられましたら,教えていただけないでしょうか?

  • C言語でのファイルへの出力について

    1つのプログラムで、複数のファイルを出力したいと考えております。 ファイル名も test_1.txt test_2.txt   ・   ・   ・ test_100.txt というように、番号のみ違うものに。 そして手動ではなく、for文などを用いてファイル名を決めたいです。 つまり、 for(i=0;i<100;i++){   fp = fopen("test_i.txt","w") } みたいなことをしたいのです。 でも上記のようだとエラーが出ます。 どうしたらよろしいのでしょうか…。

  • USWC fopenできません。

    USWCの勉強を始めて3日目の初心者です。 fopenの使い方がわからず困っています。  file = fopen("C:\test.txt",F_READ)  msgbox(file) 実行するとfileの戻り値は"1"なのにファイルが何も開きません。 何がおかしいのでしょうか? 初歩的な質問で申し訳ありませんがご教授ください。

  • 連続でファイル作成

    連続でファイル作成 最終的にパラパラアニメの要領でアニメーションを作ろうと考えています。 そこで、C言語でfor文を使ってたくさんのファイルを作成することを考えました。 そこで質問なのですが、ファイル名を少しずつ変える方法はどうしたらいいのでしょうか? 最初、for文中に fd = fopen("test%d.txt",i,"w"); と書いてみたのですが、『too many arguments to function ‘fopen’』とエラーが出ました。 (もちろん整数iはi++でfor文中に入れてあります。つまり、test1,test2,...,test10のようなテキストファイルを作成したかったという意味です。) C言語を始めたばかりなのでとても初歩的な質問かと思いますが、わかる方どうぞよろしくお願いいたします。

  • C言語でフルパスのファイル読み込み方法について

    VBAからC言語の勉強を始めたのですが、 c:\test\myfile.txt というファイルを読み込むとき FILE *fp; fp = fopen("c:\\test\\myfile.txt", "r"); というようにアドレスバーからパスをコピーして貼り付けた後、\を\\に置換しなければなりません。 そのままパス情報を使えていたVBAのプログラムよりかなりわずらわしく感じるのですが、C言語ではファイルの読み込みでフルパスを指定して読み込むのは一般的ではないのでしょうか。 それともほかにやり方(\のままパスを設定する方法)があるのでしょうか。 なんだか使い勝手が違ってちょっと戸惑っているのですが、よろしくお願いします。

  • バッチファイルでパスとファイル名を併記した一覧を書き出したい

    バッチファイルでパスとファイル名を併記した一覧を書き出したい いつもお世話になってます。また相談させていただきたいです。 下のようにバッチファイルでカレントフォルダ内のパスとファイル名を併記し、ファイル名一覧を書き出したいのですが、 c:\test\123.txt c:\test\abc.txt ・ ・ c:\test\いろは.txt 欲をいえば下の様に、 "c:\test\123.txt" "c:\test\abc.txt" ・ ・ "c:\test\いろは.txt" 『dir /b /w *.*> fname_ichiran.txt』 ↑ ↑ ↑ をどのように変更すれば良いのでしょうか? 今回もどなた様かお知恵を貸して下さい。よろしくおねがいします。

  • 取得したファイル名から拡張子の削除について

    BATにおいて「C:\test」フォルダに格納されているファイルに対してファイル名を取得後、取得したファイル名から拡張子を削除したファイル名を変数にセットしたいと考えていますが、どのようなロジックにしたらいいかご教示頂けますようお願い致します。 実際のファイルの拡張子は削除せず、表示されたファイル名の拡張子を削除したファイル名を変数にセットしたいと考えています。 ------------------------------------------------------------------------------- set FOLDER=C:\test for /f "usebackq" %%i in (`dir %FOLDER% /B *.txt`) do ( echo %%i pause ) ------------------------------------------------------------------------------- -------------------------------------------------------------------------------- C:\testの中身 a.txt bb.txt ccc.txt dd.txt e.txt -------------------------------------------------------------------------------

専門家に質問してみよう