gpt4 book ai didi

windows-phone-7 - 获取 "Operation not permitted on IsolatedStorageFileStream"保存 jpg

转载 作者:行者123 更新时间:2023-12-04 05:31:02 29 4
gpt4 key购买 nike

怎么了?我在此行中收到此错误“在隔离存储文件流上不允许操作”:

using (IsolatedStorageFileStream fileStream = myIsolatedStorage.OpenFile("folder\\" + fileName, FileMode.Create))

第一次运行正常,但第二次不行。
string nameFile= e.UserState.ToString();
Stream stream = e.Result;
using (IsolatedStorageFile myIsolatedStorage = IsolatedStorageFile.GetUserStoreForApplication())
{
if (!myIsolatedStorage.DirectoryExists("folder"))
{
myIsolatedStorage.CreateDirectory("folder");
infoTextBlock.Text = "'folder' created...";
}
using (IsolatedStorageFileStream fileStream = myIsolatedStorage.OpenFile("folder\\" + fileName, FileMode.Create))
{
stream.CopyTo(fileStream);
}
}

更新

回答问题:

异常(exception):

[System.IO.IsolatedStorage.IsolatedStorageException] = {"IsolatedStorageFileStream 上不允许操作。"}

堆栈跟踪:
   at System.IO.IsolatedStorage.IsolatedStorageFileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, IsolatedStorageFile isf)
at System.IO.IsolatedStorage.IsolatedStorageFileStream..ctor(String path, FileMode mode, FileAccess access, IsolatedStorageFile isf)
at NameApp.Backup.client_DownloadImatgesCompleted(Object sender, LiveDownloadCompletedEventArgs e)
at Microsoft.Live.LiveConnectClient.<>c__DisplayClass6.<RaiseDownloadCompletedEvent>b__4()
at Microsoft.Live.SynchronizationContextWrapper.<>c__DisplayClass2.<Post>b__0(Object state)
at System.Reflection.RuntimeMethodInfo.InternalInvoke(RuntimeMethodInfo rtmi, Object obj, BindingFlags invokeAttr, Binder binder, Object parameters, CultureInfo culture, Boolean isBinderDefault, Assembly caller, Boolean verifyAccess, StackCrawlMark& stackMark)
at System.Reflection.RuntimeMethodInfo.InternalInvoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, StackCrawlMark& stackMark)
at System.Reflection.MethodBase.Invoke(Object obj, Object[] parameters)
at System.Delegate.DynamicInvokeOne(Object[] args)
at System.MulticastDelegate.DynamicInvokeImpl(Object[] args)
at System.Delegate.DynamicInvoke(Object[] args)
at System.Windows.Threading.DispatcherOperation.Invoke()
at System.Windows.Threading.Dispatcher.Dispatch(DispatcherPriority priority)
at System.Windows.Threading.Dispatcher.OnInvoke(Object context)
at System.Windows.Hosting.CallbackCookie.Invoke(Object[] args)
at System.Windows.Hosting.DelegateWrapper.InternalInvoke(Object[] args)
at System.Windows.RuntimeHost.ManagedHost.InvokeDelegate(IntPtr pHandle, Int32 nParamCount, ScriptParam[] pParams, ScriptParam& pResult)

我把断点放在我使用的地方(fileStream),这些是文件名:

第一次运行:

文件名:
  • controlPic.txt
  • PhotoChooser-c197865c-cbe6-4202-a95f-e4eeb16da943.jpg
  • PhotoChooser-d1d0c947-664f-425b-aaa2-85b17a4a73ec.jpg
  • PhotoChooser-4ce1b884-8d7f-444e-925d-2ca2ae2b3b7c.jpg

  • 第二次运行:

    文件名:
  • controlPic.txt

  • 这里崩溃,但变量“NameFile”包含正确的名称:
  • PhotoChooser-c197865c-cbe6-4202-a95f-e4eeb16da943.jpg
  • PhotoChooser-d1d0c947-664f-425b-aaa2-85b17a4a73ec.jpg
  • PhotoChooser-4ce1b884-8d7f-444e-925d-2ca2ae2b3b7c.jpg

  • 更新 2

    我已经看到问题在上传文件后发生。我已经看到当我尝试打开、删除、覆盖等以前上传的文件时出现异常...

    我正在使用此代码:
    private void UploadFilePictures()

    using (IsolatedStorageFile myIsolatedStorage = IsolatedStorageFile.GetUserStoreForApplication())
    {
    this.client.UploadCompleted
    += new EventHandler<LiveOperationCompletedEventArgs>(ISFileImatges_UploadCompleted);

    foreach (string fileName in myIsolatedStorage.GetFileNames("folder\\*.jpg"))
    {

    fileStream = myIsolatedStorage.OpenFile("folder\\" + fileName, FileMode.Open, FileAccess.Read);
    this.client.UploadAsync(skyCarpetaImatges_ID, fileName, true, fileStream, null);
    }
    }
    }




    private void ISFileImatges_UploadCompleted(object sender, LiveOperationCompletedEventArgs args)
    {
    fileStream.Close();
    fileStream.Dispose()

    this.client.UploadCompleted -= new EventHandler<LiveOperationCompletedEventArgs>(ISFileImatges_UploadCompleted);
    }

    解决方案:

    查看标记解决方案中的评论

    最佳答案

    试试这个:

    using (IsolatedStorageFile myIsolatedStorage = IsolatedStorageFile.GetUserStoreForApplication())
    {
    using (var stream = new IsolatedStorageFileStream("folder\\" + fileName,FileMode.Create,FileAccess.Write,myIsolatedStorage ))
    {
    using (StreamWriter writer = new StreamWriter(stream))
    {
    writer.WriteLine(data);
    writer.Close();
    }
    stream.Close();
    }
    }

    我希望它有帮助。

    关于windows-phone-7 - 获取 "Operation not permitted on IsolatedStorageFileStream"保存 jpg,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12625910/

    29 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com