여러 데이터 파일을 반복적으로 열기<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Windows 디렉터리의 파일을 재귀적으로 여는 코드를 찾고 싶습니다.
내 경로는 다음과 같습니다: c:\charlie\data
JMP가 이 디렉토리와 하위 디렉토리에 있는 모든 *.txt 파일을 찾아 모두 열도록 하고 싶습니다.
최종적으로는 병합할 예정이지만 지금은 모두 열어보고 싶습니다.
나는 (운이 좋지 않았지만) 다음을 시도했습니다.
경로 = "C:\charlie\data\data1";
file_list = 디렉토리의 파일("C:\charlie\data\data1");
(i=1, i<=NItems(file_list), i++,
dt =
열려 있는(
경로 || 파일 목록 ,
가져오기 설정(
줄 끝(CRLF, CR, LF),
필드 끝( 쉼표, 기타( "0x7c" ) ),
스트립 인용문( 1 ),
아포스트로피를 따옴표( 0 )로 사용하세요.
전체 파일 스캔( 1 ),
빈 열을 숫자( 0 )로 처리합니다.
라벨( 1 ),
열 이름 시작( 1 ),
데이터 시작( 2 ),
읽을 줄(모두),
연도 규칙( "20xx" )
)
);
);
Re: 여러 데이터 파일을 재귀적으로 열기이 스크립트는 디렉터리의 모든 파일을 열고 일부 기준에 따라 필터링한 다음 모든 파일을 연결하는 데 매우 효과적입니다.
================================================= ================================================= =
경로 = "C:\temp\data\";
파일 목록 = {};
file_list = 디렉토리의 파일(경로, 재귀);
myFiles = 파일_목록;
For( i = 1, i <= N 항목( file_list ), i++,
If( 포함( 파일_목록 , ".sum" ),
내 서류들 = ""
)
);
final_files = myfiles;
///////////////////목록의 첫 번째 파일 열기/////////////////////
///////추가 파일이 이 파일에 추가됩니다///////////
나는=1;
dtjoin = 공개(
경로 || final_files ,
열(
합격_실패 = 캐릭터,
매개변수 = 문자,
Data_Value = 숫자,
단위 = 문자,
LSL = 숫자,
USL = 숫자,
참고=캐릭터,
Test_Cond = 문자
),
가져오기 설정(
줄 끝(CRLF, CR, LF),
필드 끝( 쉼표, 기타( "0x7c" ) ),
스트립 인용문( 1 ),
아포스트로피를 따옴표( 0 )로 사용하세요.
전체 파일 스캔( 1 ),
빈 열을 숫자( 0 )로 처리합니다.
라벨( 1 ),
열 이름 시작( 1 ),
데이터 시작( 2 ),
읽을 줄(모두),
연도 규칙( "20xx" )
),
)
<< 이름 설정( "Joined1" );
///////////////////////////////////////////////// ///////////////////////////
//////////이제 목록의 나머지 파일을 엽니다.//////////////
///////////////////////////////////////////////// ///////////////////////////
나는=2;
For( i = 2, i <= N 항목( final_files ), i++,
dt =
열려 있는(
경로 || final_files ,
열(
합격_실패 = 캐릭터,
매개변수 = 문자,
Data_Value = 숫자,
단위 = 문자,
LSL = 숫자,
USL = 숫자,
참고=캐릭터,
Test_Cond = 문자
),
가져오기 설정(
줄 끝(CRLF, CR, LF),
필드 끝( 쉼표, 기타( "0x7c" ) ),
스트립 인용문( 1 ),
아포스트로피를 따옴표( 0 )로 사용하세요.
전체 파일 스캔( 1 ),
빈 열을 숫자( 0 )로 처리합니다.
라벨( 1 ),
열 이름 시작( 1 ),
데이터 시작( 2 ),
읽을 줄(모두),
연도 규칙( "20xx" )
)
);
dtjoin = dtjoin << 연결(
DT,
출력 테이블 이름( "Joined" || Char( i ) ),
);
닫기(dt, nosave);
Close( "결합됨" || Char( i - 1 ), nosave );
잠깐( 0.1 );
); //For 끝
dtjoin << set name( "모두 결합됨" );
Re: 여러 데이터 파일을 재귀적으로 열기CH필드,
비슷한 작업을 하고 있었는데, 한 번에 하나의 파일만 열고 이를 이전 파일의 맨 아래에 연결하려고 했습니다.
모든 파일을 연 다음 한꺼번에 연결하는 쉬운 방법은 작업 중인 파일 수 때문에 너무 지저분했습니다.
첨부된 스크립트를 사용하면 txt 또는 csv 파일이 포함된 디렉터리를 선택한 다음 한 번에 하나씩 모두 함께 연결할 수 있습니다.
이는 모든 파일이 한 번에 메모리에 맞지 않는 경우에도 도움이 됩니다.
-비
Re: 여러 데이터 파일을 재귀적으로 열기"MPB에서"라고 말해야겠습니다.감사합니다 MPB.시간이 있으시면 이와 관련해 또 다른 질문이 있습니다.
Re: 여러 데이터 파일을 재귀적으로 열기"\"를 추가했습니다.
감사해요!
이제 나는 그것들을 모두 연결하려고합니다.
MJB에서 매우 도움이 되는 게시물을 찾았습니다.
그는 JOIN을 사용하고 JMP 파일만 사용하여 이를 수행하는 방법을 게시했습니다.
가져오기 루틴과 "미리보기로 열기" 옵션을 추가했습니다.
첫 번째 파일을 연 다음 다른 파일을 열도록 루프를 설정해야 했습니다.
첫 번째 항목과 연결합니다.
아직 제대로 작동하지는 않지만 거의 가까워졌습니다.
Re: 여러 데이터 파일을 재귀적으로 열기경로 변수가 슬래시로 끝나지 않으므로 결과 파일 이름이 실패합니다.
재귀적으로 만들고 올바른 파일 이름을 가지려면 다음을 수행하십시오.
path = "C:\charlie\data\data1\";
file_list = Files In Directory(path, recursive);
for(i = 1, i <= N Items(file_list), i++,
print(path || file_list);
);
필요에 따라 인쇄 문을 수정할 수 있습니다.