[c#] 문자열 배열을 문자열로 변환

문자열 배열을 단일 문자열로 변환하고 싶습니다.

string[] test = new string[2];
test[0] = "Hello ";
test[1] = "World!";

“Hello World!”와 같은 것을 갖고 싶습니다.



답변

string[] test = new string[2];

test[0] = "Hello ";
test[1] = "World!";

string.Join("", test);


답변

이미 언급 한 방법을 사용하는 것보다 약간 빠른 옵션 Join()Concat () 방법입니다. 빈 구분 기호 매개 변수가 Join()필요하지 않습니다. 예:

string[] test = new string[2];
test[0] = "Hello ";
test[1] = "World!";

string result = String.Concat(test);

따라서 더 빠를 것입니다.


답변

시험:

String.Join("", test);

두 요소를 결합하는 문자열을 반환해야합니다. ""구분 기호없이 문자열을 결합하려는 것을 나타냅니다.


답변

간단한 string.Concat ()이 필요합니다.

string[] test = new string[2];

test[0] = "Hello ";
test[1] = "World!";

string result = string.Concat(test);

구분 기호 (공백, 쉼표 등)도 추가해야하는 경우 string.Join ()을 사용해야합니다.

string[] test = new string[2];

test[0] = "Red";
test[1] = "Blue";

string result = string.Join(",", test);

string.Join ()보다 요소가 많은 문자열 배열 에서이 작업을 수행 해야하는 경우 성능 관점에서 더 좋습니다. “”(공백) 인수를 구분자로 제공하십시오. StringBuilder는 성능 향상을 위해 사용할 수도 있지만 코드를 조금 더 길게 만듭니다.


답변

Aggregate 같은 용도로도 사용할 수 있습니다.

string[] test = new string[2];
test[0] = "Hello ";
test[1] = "World!";
string joinedString = test.Aggregate((prev, current) => prev + " " + current);


답변

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


답변

이 방법으로 프로젝트를 더 빠르게 만들었습니다.

RichTextBox rcbCatalyst = new RichTextBox()
{
    Lines = arrayString
};
string text = rcbCatalyst.Text;
rcbCatalyst.Dispose();

return text;

RichTextBox.Text는 배열을 여러 줄 문자열로 자동 변환합니다!