スキップしてメイン コンテンツへ

 none
UWPにて、StorageFileにOpenStreamForWriteAsyncを実行すると「別のプロセスが~」エラーになることがある RRS feed

  • 質問

  • StorageFolder folderobj = await SubFolder(hogefolder, "AAA");//←hogefolderというフォルダのサブフォルダでAAAという名前のフォルダのStorageFolderを返すルーチン。

    StorageFile fileobj = await fileINfolder(folderobj, "BBB.csv");//←folderobjというフォルダにあるBBB.csvというファイルのStorageFileを返すルーチン。

    にてfolderobj、fileobjを取得することはできましたが、

    System.IO.Stream writeobj = await fileobj.OpenStreamForWriteAsync();

    にて、ファイルストリームを取得することができない場合があります。その場合「プロセスはファイルにアクセスできません。別のプロセスが使用中です」というエラーになります。時間をおいてもこのエラーが出たままになります。正しくStreamを作成できる方法をご教示ください。


    • 編集済み ナノレス 2018年12月23日 9:31 タイトルを正しくなおす
    2018年12月23日 9:30

回答

  • ナノレスさん、こんにちは。フォーラムオペレーターのHarukaです。
    MSDNフォーラムにご投稿くださいましてありがとうございます。

    上記の件につきまして、
    次のURLを参照して、代わりにUWP方法を使用してください。

    https://docs.microsoft.com/en-us/windows/uwp/files/quickstart-reading-and-writing-files

    コードは次のようになります。

    var stream = await sampleFile.OpenAsync(Windows.Storage.FileAccessMode.ReadWrite);

    詳細については、上記のdocからこの部分を見てください:Writing text to a file by using a stream (4 steps)

    うぞよろしくお願いします。


    ~ 参考になった投稿には回答としてマークの設定にご協力ください ~
    MSDN Community Support Haruka


    2018年12月27日 6:27
    モデレータ