2017-10-16 8 views
0

誰かが私を助けてくれるのかと疑問に思っていましたが、インターネット全体を検索して解決策を見つけることができませんでした。 txtファイルは、最初に.txtで終わるファイルを取得するために文字列配列を使用し、文字列配列を文字列に変換して、その文字列を使用してすべてのバイトを読み取り、バイト配列に置きます。しかし、私がプログラムを実行すると、それはSystem.NotSupportedExceptionという例外が出ます。誰も助けることができますか?ありがとうございました。文字列から1バイトを読み取るときにSystem.NotSupportedExceptionが発生する

String[] fileArray = Directory.GetFiles(@"C:\Users\Desktop\feature", "*.txt"); 
     String file = ConvertStringArrayToString(fileArray); 
Byte[] pFeatureLib = File.ReadAllBytes(file); // error occur here 


    public String ConvertStringArrayToString(String[] array) 
    { 
     // Concatenate all the elements into a StringBuilder. 
     StringBuilder builder = new StringBuilder(); 
     foreach (string value in array) 
     { 
      builder.Append(value); 
      builder.Append('.'); 
     } 
     return builder.ToString(); 
    } 
+1

ファイル変数に1つのファイル名をつけますが、無効な名前です。 – BugFinder

+0

* * txt *ファイルから* bytes *を読んでよろしいですか? 'File.ReadAllText'または' File.ReadAllLines'もあります。 –

答えて

1

あなたは複数のファイルを取得することを意味します。

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

String[] fileArray = Directory.GetFiles(@"C:\Users\Desktop\feature", "*.txt"); 
foreach(string file in fileArray){ 
    Byte[] pFeatureLib = File.ReadAllBytes(file); 
} 

またはあなたが(何らかの理由で)最初のファイルだけをしたい場合:あなたはするつもりはない以上1つのテキストファイルがある場合

String[] fileArray = Directory.GetFiles(@"C:\Users\Desktop\feature", "*.txt"); 
if(fileArray.Length > 0) { 
    Byte[] pFeatureLib = File.ReadAllBytes(fileArray[0]); 
} 
+0

うーん!どうもありがとう! –

関連する問題