ページへ戻る

− Links

 印刷 

hideyosi​/hijk​/ファイル入出力 のバックアップの現在との差分(No.3) :: OSASK計画

osaskwiki:hideyosi/hijk/ファイル入出力 のバックアップの現在との差分(No.3)

« Prev[4]  
3: 2010-02-02 (火) 15:07:14 lina[5] ソース[6] 現: 2024-01-08 (月) 12:58:58 lina[5] ソース[7]
Line 8: Line 8:
これがソース。 これがソース。
 #include <guigui01.h>  #include <guigui01.h>
 + 
 void G01Main()  void G01Main()
 {  {
Line 15: Line 15:
  };   };
  int i, j;   int i, j;
 + 
  g01_setcmdlin(cmdlin);   g01_setcmdlin(cmdlin);
  g01_getcmdlin_fopen_s_3_5(1);   g01_getcmdlin_fopen_s_3_5(1);
Line 54: Line 54:
       int pathlen = 8;        int pathlen = 8;
 //          パスの長さってことでいいのかな。test.txtだから、8でいいのかな。  //          パスの長さってことでいいのかな。test.txtだから、8でいいのかな。
 + 
       static unsigned char path[] = { 't','e','s','t','.','t','x','t' };        static unsigned char path[] = { 't','e','s','t','.','t','x','t' };
 //          パス。カレントにあるのでファイル名だけでいいはず・・・  //          パス。カレントにあるのでファイル名だけでいいはず・・・
 + 
       jg01_fopen(mode, slot, pathlen, path);        jg01_fopen(mode, slot, pathlen, path);
 //          ファイルをオープンしてみる  //          ファイルをオープンしてみる
 + 
       if( slot == -1 ) {        if( slot == -1 ) {
               g01_putc('x') ;                g01_putc('x') ;
               return;                return;
       }        }
 + 
       g01_putc('O') ;        g01_putc('O') ;
       return;        return;
Line 111: Line 111:
       char *path; path = "test.txt";        char *path; path = "test.txt";
 //          パス。カレントにあるのでファイル名だけでいいはず・・・  //          パス。カレントにあるのでファイル名だけでいいはず・・・
 + 
       jg01_fopen(mode, slot,  path);        jg01_fopen(mode, slot,  path);
 //          ファイルをオープンしてみる  //          ファイルをオープンしてみる
 + 
       if( slot == -1 ) {        if( slot == -1 ) {
               g01_putc('x') ;                g01_putc('x') ;
               return;                return;
       }        }
 + 
       char *buffer = g01_bss1a1;        char *buffer = g01_bss1a1;
 //            2Mのバッファを確保してと・・・  //            2Mのバッファを確保してと・・・
Line 151: Line 151:
--戻り値に読み込んだデータのバイト数が入る。 --戻り値に読み込んだデータのバイト数が入る。
--「読んだデータだけを取り出したい」って場合は、自分でバイト数を元にバッファから大きさを指定して取り出さないとデータが狂うことになる --「読んだデータだけを取り出したい」って場合は、自分でバイト数を元にバッファから大きさを指定して取り出さないとデータが狂うことになる
 +
 +
 +
 +*書いてみよう! [#ab20bf06]
 +読めたんだから書いてもみようってなもんで!
 +
 +まず、当然だが、ファイルをオープンしないといけない。書けるようにファイルを開けるには・・・
 +
 +     int mode; mode = 1;
 + //          いっけね・・・Cでは2進数表記ないんだっけ。
 + //                            00000000000000000000000000011001
 + //        ???                  1              1        001
 + //                          新規モード?    書くよ  とりあえず1
 +
 +これでオープンしてあげればいいと!
 +
 +そんでもって書いてみる。・・・例によってguigui01.hとニラメっこ・・・なるほどなるほど・・・・
 +     mode = 0x19;
 +     slot = 5;
 +     path = "newfile.txt";
 +     char *hiyohiyo; hiyohiyo = "hiyokogumo! hiyohiyo ho---!";
 + //          いっけね・・・Cでは2進数表記ないんだっけ。
 + //                            00000000000000000000000000011001
 + //        ???                  1              1        001
 + //                          新規モード?    書くよ  とりあえず1
 + 
 +     jg01_fopen(mode, slot,  path);
 +     jg01_fwrite0f_5(hiyohiyo);
 +
 +これでメイクして走らせて・・・・って! 書けた!!!
 +
 +うおぉぉぉ!!! %%パコかわゆす%% 書き込めたぞおぉぉ!!!
« Prev[4]