I TEXTFILE에서 줄 바꿈과 함께 다음과 같은 문자열이 있습니다. 여기는 C#으로 다차원 배열로 텍스트 데이터를 변환 :
Card No. Seq Account 1 Account 2 Account 3 Account 4 Customer Name Expiry Status
0100000184998 1 2500855884500 - - /NIRMAL PRADHAN 1302 Cold
0100000186936 1 - - - /RITA SHRESTHA 1302 Cold
0100000238562 1 2500211214500 - - /HARRY SHARMA 1301 Cold
0100000270755 0 1820823730100 - - /EXPRESS ACCOUNT 9999 Cold
0100000272629 0 1820833290100 - - - /ROMA MAHARJAN 1208 Cold
0100000272637 0 2510171014500 - - /NITIN KUMAR SHRESTHA 1208 Cold
0100000272645 0 1800505550100 - - - /DR HARI BHATTA 1208 Cold
,
Card No
,Seq
고정했다 자리를.Account 1, Account 2, Account 3, Account 4
은fixed digit number
또는-
또는null
일 수 있습니다.- 고객 이름이
First Name
,Last Name
,Middle Name
등
내 원하는 결과가있을 수 있습니다 : 여기
array[0][0] = "0100000184998"
array[0][1] = "1"
array[0][2] = "2500855884500"
array[0][3] = " "
array[0][4] = "-"
array[0][6] = "NIRMAL PRADHAN "
array[1][0] = "0100000186936"
array[1][1] = "1"
array[1][3] = " "
array[1][4] = "-"
, 내가 시도하는 것입니다 :
var sourceFile = txtProcessingFile.Text;
string contents = System.IO.File.ReadAllText(sourceFile);
var newarr = contents.Split(new char[]{ '\r', '\n' }, StringSplitOptions.RemoveEmptyEntries)
.Select (x =>
x.Split(new char[]{ ' ' }, StringSplitOptions.RemoveEmptyEntries).ToArray()
).ToArray();
DataTable dt = new DataTable("NewDataTable");
dt.Columns.Add("CardNo");
dt.Columns.Add("SNo");
dt.Columns.Add("Account1");
and so on...
for (int row = 0; row < newarr.Length; row++)
{
for (int col = 0; col < newarr[col].Length; col++)
{
dt.Rows.Add(newarr[row]);
row++;
}
}
이 경우 잘 작동 데이터 필드는 비어 있지 않으며 고객 이름은 첫 번째 이름이거나 구분됩니다.
는하지만, 여기에 내가 무엇을 얻기 위해 시도하고 있습니다 :
First Name
,Middle Name
또는Last Name
이 같은 배열 요소에 저장해야합니다.Account Number
은 공백으로 남겨 두어야합니다.어떻게 데이터 테이블에 올바르게 저장할 수 있습니까?
당신이 계정 값-
과null
값 사이의 차이를 제작하지 않는 타협을하고자하는 경우
'만기'와'상태'는 항상 비어 있지 않은 값을 가질 것입니까? –
예 ..(그러나 계정 번호로 구현할 수 있다면 내 가정은 만료 및 상태에 문제가되지 않을 것입니다.) –
** 1 ** 파일에서 데이터 엔터티를 분리하기 위해 공간 만 사용하고 있으므로 다음을 사용하십시오. 이름과 성을 저장하는 특수 문자. 예. 해리 /> 샤 르마. 읽을 때 />을 삭제할 수 있습니다. ** 2 ** ** 공백 문자를 지정하는 것과 같은 방법으로 특수 기호를 사용하십시오. 계정 번호가 no이면 #?>을 사용하십시오. 공백이며 파일 읽기 작업 중 제거하십시오. – ikis