0

間違った方向に進んでいる場合は、お気軽にアドバイスをお願いします。

Visual Studio for Windows 8 Apps および Windows 8 Phone Apps 環境でのストリームの使用を理解できません。

私がやりたいのは、ファイルから文字列にテキストを読み取ることだけです。Visual Studio for Windows Desktop で使用する簡単なコードを次に示します。

    Sub ReadFromFileTest()
    Dim FilePath As String = "c:\2012\Projects\VBDesktopTest\Test.txt"
    Dim ReadString As String
    Dim Reader As New System.IO.StreamReader(FilePath)

    ReadString = Reader.ReadLine()
    Do Until ReadString Is Nothing
        OutputListBox.Items.Add(ReadString)
        ReadString = Reader.ReadLine()
    Loop
    Reader.Close()
    Reader.Dispose()
    End Sub

Windows 8 アプリケーション用の Visual Studio のこの同じコードは、「'string' 型の値を 'system.io.stream' に変換できません」というエラーを生成します。StreamReader クラスのコンストラクターのリストを調べたところ、StreamReader (文字列としてのファイル名) が ".NET for Windows Store apps" でサポートされていないことがわかりました。StreamReader(stream) コンストラクターを使用する必要があるようですが、ファイルをストリームにする方法がわかりません。

最終的な目標は、Windows Phone 7.1 用のシンプルなアプリを作成することです。このアプリは、テキスト ファイルに保存されている機器のリストから情報を検索して返します。電話エミュレーターとさらに混同しないように、Windows 8 から始めています。

4

1 に答える 1

0

Vb .netについてはわかりませんが、Windows Phoneの目的を果たすc#コード(関数)を共有しています

 private string ReadFile(string filePath)
{
    //this verse is loaded for the first time so fill it from the text file
    var ResrouceStream = Application.GetResourceStream(new Uri(filePath, UriKind.Relative));
    if (ResrouceStream != null)
    {
        Stream myFileStream = ResrouceStream.Stream;
        if (myFileStream.CanRead)
        {
            StreamReader myStreamReader = new StreamReader(myFileStream);

            //read the content here
            return myStreamReader.ReadToEnd();
        }
    }
    return "NULL";
}

私が取った答えはこのリンクからです

ストリーム Windows Phone からのファイルの読み取り

VB で同等のコードを取得してみてください。

:私は反対票を投じませんでした:)

正確なコードを教えないように指示できます:)

于 2013-09-04T14:05:49.820 に答える