방금 tcl을 배우기 시작했고 큰 파일을 읽는 데 문제가 있습니다. 내가 데이터는 다음과 같은 파일이이 같은tcl을 사용하여 파일의 모든 섹션을 읽는 방법?
420
360 360 360 3434.01913
P 6.9022 0.781399 -0.86106
C 4.36397 -0.627479 3.83363
P 6.90481 5.42772 3.08491
....
및 종료 :
P -7.21325 1.71285 -0.127325
C -4.14243 0.41123 4.67585
420
.69667
그래서 C는 한 섹션의 마지막 줄이 420 다음 섹션의 시작입니다. 그래서 420 줄마다 전체 파일의 한 부분을 만듭니다. 어떻게하면이 파일의 모든 섹션을 읽고 "frame1"이라고 말하고 파일 끝까지 (frame2, frame3 ... 등) 할 수 있습니까? 나는 줄 단위로 전체 파일을 읽는 간단한 스크립트를 생각해 냈지만이 작업을 수행하는 방법을 모르겠다. 감사합니다.
이 우리에게 문제를 해결하기 위해 당신의 시도를 표시합니다. –
괜찮 았어 .proc read_xyz_frame {fp n_bp} { {0 {$ { 0을 얻는 동안 나는 을 설정한다. } { \t 세트 필드는 [분할 $ 라인 "을"] lassign $ 필드는 내가 사용하는 XYZ 을 $ FP 라인을 가져옵니다 이름을 지금 내 문제를 내가 주로 수행하고 싶어 line1.what n_atoms $를 설정하는 그것을 통과하지만, 각 섹션의 시작 부분에 두 개의 헤더 행이 있습니다. 나는 그들을 건너 뛰고 싶습니다. (필자가 올바른 용어를 모르는 경우 미안하지만) 파일의 다른 프레임이나 섹션을 읽기 시작합니다. –
amir