C #- 첫 번째 NULL 터미네이터에서 문자열 트리밍 문자열 및 이후
-
05-07-2019 - |
문제
나는 c# 문자열 "rip-1234-stop 0 0 0 0 b 0 0 0 ??? | b? mp? 0 0"이 기본 드라이버로의 호출에서 반환되었습니다.
First NULL 터미네이터 ' 0 Owender에서 모든 문자를 어떻게 다듬려면 어떻게해야합니까? 이 경우 "Rip-1234-stop"을 원합니다.
감사.
해결책
다음은 트릭을 수행 해야하는 방법입니다
string TrimFromZero(string input)
{
int index= input.IndexOf('\0');
if(index < 0)
return input;
return input.Substring(0,index);
}
다른 팁
이 시도:
var input = "RIP-1234-STOP\0\0\0\b\0\0\0???|B?Mp?\0\0\0";
var firstNull = input.IndexOf('\0');
var output = input.Substring(0, firstNull);
또는 간단히 :
var output = input.Substring(0, input.IndexOf('\0'));
이것도 작동합니다 :
var input = "RIP-1234-STOP\0\0\0\b\0\0\0???|B?Mp?\0\0\0";
var split = input.Split('\0');
var output = split[0];
Assert.AreEqual("RIP-1234-STOP", output);
제휴하지 않습니다 StackOverflow