トップページ
ひらく | たたむ | ページトップ
↓マウスで反転選択した文字を検索
C#
   
ページ内検索 ページ外検索
検索したい文字を入力して
ENTERを押すと移動します。
\n
[ トップページ ]
[ ____CommandPrompt ] [ ____JScript ] [ ____MySQL ] [ ____Cygwin ] [ ____Java ] [ ____Emacs ] [ ____Make ] [ ____Perl ] [ ____Python ] [ ____OpenGL ] [ ____C# ] [ ____StyleSheet ] [ ____C++ ] [ ____Winsock ] [ ____Thread ] [ ____VisualStudio ] [ ____C ] [ ____Win32API ] [ ____Lua ] [ ____PhotoShop ]
ヘッダ検索
___

■ ファイル(File)


___

■ 書き込み


  using System.IO;

        {
            FileStream f = new FileStream( "d:/test.txt", FileMode.Create, FileAccess.ReadWrite, FileShare.ReadWrite );

            StreamWriter s = new StreamWriter( f );
            s.WriteLine("aaa");
            s.WriteLine("bbb");
            s.Flush();
        }

___

■ ロック(Lock)


        {
            FileStream f = new FileStream( "d:/test.txt", 
                      FileMode.Create, 
                      FileAccess.ReadWrite, 
                      FileShare.ReadWrite
                      );

            StreamWriter s = new StreamWriter( f );
            s.WriteLine("aaa");
            s.WriteLine("bbb");
            s.Flush();

            // ファイル全体をロックする
            f.Lock(0, f.Length);

            // 何か長い処理をする。
            // ロック中は他のプロセスはアクセスできない。
            // プロセスはファイルにアクセスできません。別のプロセスが使用中です。
            Thread.Sleep( 30 * 1000 );

            f.Unlock(0, f.Length);
        }
        
        
            // ロックをすることで、他のプロセス(コード)からアクセスすると IOException が発生する。
            f.Lock(0, f.Length);

            FileStream f2 = new FileStream( "d:/test.txt", FileMode.Open, FileAccess.ReadWrite, FileShare.ReadWrite );

            StreamWriter s2 = new StreamWriter( f2 );
            s2.WriteLine("aaa");
            s2.WriteLine("ccc");

            // 厳密には Write() で追加したバッファの内容がファイルへ転送した瞬間におきる。
            s2.Flush();
            s2.Close();


















NINJAIDX 10