web-dev-qa-db-ja.com

C#-文字列をcharに変換する方法は?

私はC#の初心者であり、文字列を文字に変換する方法、具体的には_string[]_を_char[]_に変換する方法を知りたいです。 ToCharArray()を試しましたが、それが存在しないというエラーが表示されました。 Convert.ToChar(<char here>)は次のエラーを表示します

「char」から「System.Array」に変換できません

8
enricogp

使用する:

string str = "Hello";
char[] characters = str.ToCharArray();

単一の文字列がある場合は、試すこともできます

string str = "A";
char character = char.Parse(str);    

//OR 
string str = "A";
char character = str.ToCharArray()[0];
7
string[] arrayStrings = { "One", "Two", "Three" };
var charArrayList = arrayStrings.Select(str => str.ToCharArray()).ToList();
3
Boris Sokolov

ToCharArray文字列のメソッドを呼び出すことにより、文字列を文字の配列に変換できます。

var characters = stringValue.ToCharArray();

タイプstring[]のオブジェクトは文字列ではなく、文字列の配列です。 ToCharArrayなどのメソッドを呼び出すだけでは、文字列の配列を文字の配列に変換できません。もっと正確に言うと、.NETフレームワークにはこのことを行うメソッドはありません。ただし、これを行うために拡張メソッドを宣言することもできますが、これは別の議論です。

配列内の文字列を構成する文字の配列を作成することが目的の場合は、配列の各文字列でToCharArrayメソッドを呼び出すことで作成できます。

1
Christos
char[] myChar = theString.ToCharArray();
0
dutycorpse

あなたの質問は少し不明瞭ですが、あなたが欲しいと思う(using System.Linq;が必要です):

var result = yourArrayOfStrings.SelectMany(s => s).ToArray();

別の解決策は次のとおりです。

var result = string.Concat(yourArrayOfStrings).ToCharArray();
0
string[] array = {"USA", "ITLY"};
char[] element1 = array[0].ToCharArray();
// Now for element no 2
char[] element2 = array[1].ToCharArray();
0