2012-04-01 3 views
1

내 데이터베이스에서 줄 바꿈 (\r\n)을 포함하는 string을로드하고 있습니다. 그러나 이것은 새로운 행으로 렌더링되지 않고 대신 \r\n으로 렌더링됩니다.텍스트 상자에 줄 바꿈이 올바르게 표시되지 않습니다.

문자열에서로드하는 대신 직접 입력하면 정상적으로 작동하지만 문자열에서로드 할 수 있어야합니다.

아이디어가 있으십니까? 데이터베이스에서

Changed test7\\r\\nChanged test8\\r\\nChanged test9Changed test7 

:

편집 : 문자열로 반환되는 것처럼 가까이 검사되면, 그것은 보인다.

.Replace(@"\\", @"\")을 실행 해 보았지만 아무런 효과가 없었습니다. 어떤 아이디어?

답변

1

이 작동하지 않을 때이를 수행해야합니다 .Replace(@"\\", @"\")

내가 일 해야하는 것은 다음과 같습니다.

.Replace("\\r\\n", "\r\n"); 
+0

나는 아직도 어떻게 작동하는지 이해하지 못한다. '\\ r \\ n'은 (는)'\ r \ n' (으)로 번역하면 안됩니까? – TheGateKeeper

5

어떨까요?

string yourString="something\r\n..somethingMore"; 
yourString=yourString.replace("\r\n",Environment.NewLine); 
yourTextBox.Text=yourString; 

이 솔루션이 요구 사항을 충족합니까?

+0

Thx는 내 대답 @competent_tech를 서식 지정하고, 여전히 gett ing : –

+0

메이트가 작동하지 않습니다. – TheGateKeeper

+0

바보 야! 바꾸려는 문자열을 인용하는 것을 잊어 버렸습니다.이 작업이 가능합니다. yourString = yourString.replace (@ "\ r \ n", Environment.NewLine); 나에게 동료를 가르쳐 주셔서 감사합니다 :) –

1

TextBox의 Multiline 속성이 true로 설정되어 있습니까?

1

.Replace 함수를 호출하면 문자열에 @이 추가됩니다. 이렇게하면 @"\\""\\\\"으로 변환되고 @"\""\\"으로 변환됩니다.

.Replace("\\", "\")을 실행하면 정상적으로 작동합니다.

+0

'\'가 이스케이프 문자로 간주되기 때문에 작동하지 않습니다. – TheGateKeeper

2

전화 .Replace(@"\r", "\r").Replace(@"\n", "\n")

하거나 탈출로 백 슬래시를 볼 수 있지만, 이상하게 때문 .Replace("\\", "\") 작동하지 않습니다 단지 .Replace(@"\r\n", "\r\n")

관련 문제