2

次のコードがありますが、「タイプ 'string' を 'char[]' に暗黙的に変換できません」というエラーが表示されます。

char[] hTempFile = new char[300 + 1];
hTempFile ="";
4

5 に答える 5

5

Achar[]は a とは異なりstringます。空の配列にする場合は、次のようにします。

hTempFile = new char[0];

またはおそらく単純に(いくつかのヌルチェックを追加する場合):

hTempFile = null;

にもありますが.ToCharArray()stringここではやり過ぎのようです。

率直に言って、ファイル名については、実際にここで使用する必要があるように思えます。string

于 2012-09-14T08:34:37.620 に答える
2

C スタイルの文字列初期化のように見えます。C# では、文字列に char 配列を使用することを避け、代わりに文字列クラスを使用することをお勧めします。

string hTempFile = string.Empty;
于 2012-09-14T14:48:52.933 に答える
0

hTempFile を空の文字列、またはより具体的には、空の文字列の C 文字列表現に設定したいようです。その場合、あなたがする必要があるのは、

hTempFile[0] = 0;

C 文字列は null で終了するため、配列の最初の char に null バイトを配置すると、実質的に文字列が空になります。

于 2012-09-14T15:04:00.077 に答える
0

String.ToCharArray()を使用して、文字列から char の配列を取得できます....指定された例のように文字列が空の場合、返される配列は空で、長さはゼロです....

hTempFile = "".ToCharArray();
于 2012-09-14T08:35:53.063 に答える
0

何を達成したいですか?hTempFile はすでに char[] 型として定義されています。

文字列値を hTempFile に割り当てることはできません。

于 2012-09-14T08:37:05.377 に答える