1

C#.NET と Windows CE Compact Framework を使用しています。1 つの文字列を 2 つのテキスト ボックスに分割するコードがあります。

textbox1 = ID
textbox2 = quantity

string BarcodeValue= "+0000010901321 JN061704Z00";

textbox1.text = BarcodeValue.Remove(0, BarcodeValue.Length - BarcodeValue.IndexOf(' ') + 2);
//Output: JN061704Z00

textbox2.text = BarcodeValue.Remove(10, 0).TrimStart('+').TrimStart('0');
//Output: should be 1090 but I am getting a wrong output: 10901321 JN061704Z00
//Please take note that 1090 can be any number, can be 999990 or  90 or 1

誰かがこれで私を助けることができますか? :(((

ありがとう!!

4

7 に答える 7

5

使用Split方法:

string BarcodeValue = "+0000010901321 JN061704Z00";
var splitted = BarcodeValue.Split(' '); //splits string by space    

textbox1.text = splitted[1];

textbox2.text = splitted[0].Remove(10).TrimStart('+').TrimStart('0');

IndexOutOfBound例外を回避するために、アクセスする前に、分割された長さが2であるかどうかを確認する必要があります。

于 2013-07-12T07:17:39.713 に答える
4

使用するSplit()

string BarcodeValue= "+0000010901321 JN061704Z00";
string[] tmp = BarcodeValue.Split(' ');
textbox1.text = tmp[1];
textbox2.text= tmp[0].SubString(0,tmp[0].Length-4).TrimStart('+').TrimStart('0');
于 2013-07-12T07:17:54.357 に答える