比方說,我有一個字節數組從字節數組轉換爲字符串,將字符串分割
Byte[] arr;
然後我將數組字符串轉換1。
String inputString = "";
foreach (Byte b in arr)
{
if (b != 0)
inputString += (Char) b;
else inputString += " ";
}
假設字符串爲:
inputString = @"C:\Program Files\Test C:\Users\User A\AppData\Local\Temp C 32323 C:\Program Files\Test\Temp";
我希望它被分成4個串看起來象下面這樣:
C:\Program Files\Test \\position 0 = test folder
C:\Users\User A\AppData\Local\Temp \\position 1 = windows temp folder
C 32323 \\position 2 = a name. It can be C2313 or C 2312 or whatever string
C:\Program Files\Test\Temp \\position 3 = temp for test folder
\\ position can change by me...
中間的每一個字符串將空間分割。這意味着我可以使用.Split('')。但是,正如你所知,一些路徑之間有空間,'C:\ Program Files \ Test'就是一個例子。
如何獲得我想要的值?
確定最初的'byte []'在各個路徑之間沒有'\ 0'嗎?嘗試將'inputString + ='「'改爲'inputString + =」|「' – xanatos
子串'C:\ Users \ User A \ AppData \ Local \ Temp'和'C 32323'?遵循該模式,它應該是'C:\ Users \ User A \ AppData \ Local \ Temp C 32323'文件夾,不是嗎? – ASh
@xanatos它肯定會有不止一個\ 0 –