0

URL から画像を取得して分離ストレージに保存し、分離ストレージから画像を取得しようとしているのは、関連するコードです。

public void GetImages()
{
    string uri = "http://sherutnetphpapi.cloudapp.net/mini_logos/" + path;
    WebClient m_webClient = new WebClient();
    imageUri = new Uri(uri);   
    m_webClient.OpenReadAsync(imageUri);
    m_webClient.OpenReadCompleted += new OpenReadCompletedEventHandler(webClient_ImageOpenReadCompleted);
    m_webClient.AllowReadStreamBuffering = true;  
}

void webClient_ImageOpenReadCompleted(object sender, OpenReadCompletedEventArgs e)
{
    string iso_path = "~/SherutApp1;component/" + path;
    var isolatedfile = IsolatedStorageFile.GetUserStoreForApplication();
    using (IsolatedStorageFileStream stream = new IsolatedStorageFileStream(iso_path, FileMode.Create, isolatedfile))                                                                    
    {

        byte[] buffer = new byte[e.Result.Length];
        while (e.Result.Read(buffer, 0, buffer.Length) > 0)
        {
            stream.Write(buffer, 0, buffer.Length);
        }
    }
}

この行の見出しで例外が発生します。

using (IsolatedStorageFileStream stream = new IsolatedStorageFileStream(iso_path, FileMode.Create, isolatedfile))

何が問題なのかわかりませんが、画像が分離ストレージに正しく挿入されていない可能性があると思います。

4

1 に答える 1

1

"~/SherutApp1;component/"そこの部分は必要ないと思います。パス全体がそうである"test.jpg"か、"folderThatExists\\test.jpg"それが機能するはずです。

于 2012-06-20T14:04:11.027 に答える