0
디스크에 데이터 테이블을 저장해야합니다. 그것은 단지 하나의 열이며 각 행을 저장하는 둥근 고리를 반복했습니다, 그리고 문자열에 행을 추가하고 그것을 저장하려고했습니다.디스크에 단일 열 데이터 테이블을 저장하는 것이 더 빠릅니다.
For i = 0 To dt.Rows.Count - 1
fd.savefile("c:\filename.txt, " " & dt.Rows(i).Item("word"), "append") 'appends to file
'or
wordList = wordList & " " & dt.Rows(i).Item("word") 'builds up the word list and..
Next
'
fd.saveFile("c:\filename.txt", "overwrite") 'then saves it to disk.
매우 느립니다.
이걸 발견했습니다 : 슈퍼 빠른 시간에 데이터의 직렬화 된 버전을 없앴다
http://bytes.com/topic/c-sharp/answers/250808-storing-datatable-data-hard-disk
FileStream fs = new FileStream(@"C:\test.bin", FileMode.Create);
BinaryFormatter bf = new BinaryFormatter();
bf.Serialize(fs, dt);
fs.Close();
. 내 루핑 프로세스보다 훨씬 빠릅니다. 어떻게 데이터 테이블을 덤프 할 수 있습니까? 그것은 데이터 테이블로 다시 읽을 필요가 없습니다. serialize 메서드는 모든 위치에 etc 태그를 넣습니다.
. 그러나 출력 파일의 각 행 사이에 캐리지 리턴을 넣고 있습니다. 어떻게 든 피할 수 있을까요? – bendecko
@bendecko - 다른'File' 헬퍼를 체크하거나 원하는대로'StreamWriter'에 쓰십시오. –
나는 볼 수있다. 나는 본다.이 모든 것에 익숙해 져있다. 감사! – bendecko