如何將文本文件打開設置保存到腳本中你好,
問題:
我有許多.txt文件。 我只關心第4列中的數據,從第7行開始到無窮大。 我想從眾多的.txt文件中提取第4列中的所有數據,並將它們連接到一個表中。 做這個的最好方式是什麼? 理想情況下,我想創建一個腳本來執行此操作。
同樣,當我使用File-open方法打開帶有Data的.txt文件(使用預覽)時,我可以正確格式化第4列數據,但是我不知道如何查找或保存這些“ open”文件' 環境。 我想保存到腳本,以便可以使用相同的設置打開其他.txt文件。
我該怎麼做呢?
我已附上我的示例.txt文件之一,以供參考。
謝謝您的幫助!
數據表腳本編寫回复:如何將文本文件打開設置保存到腳本中我相信採取的方法是使用“導入多個文件”
File =>導入多個文件
您將讀入文件夾中的所有文件,並將它們連接起來(如果需要)。然後,您要做的就是刪除不需要的列。
同樣,在運行了整個文件夾或一個測試用例的幾個文件之後,您可以轉到數據表左上方面板中的Source條目,然後右鍵單擊它並選擇Edit,您將獲得所有的JSL需要從腳本運行。
回复:如何將文本文件打開設置保存到腳本中抱歉,我沒有足夠清楚地描述我的目標。 這個建議沒有給我我所需要的。 我也意識到我將需要使用join命令而不是concatenate命令。
我有39個.txt文件。 我只想要每個.txt文件第4列中的數據。 我想提取該數據並將其添加到新表中,這樣我就有39個單獨的列(所有39個.txt文件中的每個第4列一個)。
回复:如何將文本文件打開設置保存到腳本中出於示例目的,我複制了您的示例文件的 4 個副本,並將它們全部放入我的討論組文件夾下的文件夾中
Documents\Discussion Group\textfile
然後我去了
文件=>導入多個文件

我選中了“添加文件名列”的複選框
然後我點擊“設置”

我取消選中“有標題”
我將“第一條數據線”更改為 7
我取消選中字段結束框“逗號”並選中“空格”
單擊確定
點擊導入
使用 Col1-Col6 列和 FileName 列打開的數據表

唯一需要的列是列 Col5 和 File Name,因此刪除所有其他列

現在要做的就是將 4 個輸入文件中的數據分成列
去
表=>拆分

選擇文件名作為“拆分依據”列
選擇第 5 列作為“拆分列”列
點擊確定
新表將為每個輸入文件有一列

這應該是您需要的表格的最終形式。您可以將列重命名為您想要的任何名稱。
回复:如何將文本文件打開設置保存到腳本中感謝 Jim 展示打開多個文件。 它似乎非常強大。 奇怪的是,我從來沒有使用過它——可能是因為像這樣編寫腳本任務的老習慣。
如果所有文件的行數完全相同,則以下腳本應提供相同的最終表格。
Names Default To Here( 1 );
path = "path to directory of text files";
files = Files In Directory( path );
open_expr = Expr(
dt = Open(
path || Expr( files[i] ),
Import Settings(
End Of Line( CRLF, CR, LF ),
End Of Field( Spaces, CSV( 0 ) ),
Data Starts( 7 ),
Lines To Read( "All" )
),
private
)
);
M = []; //Matrix to hold data from multiple files
L = {}; // List of imported file names
For( i = 1, i <= N Items( files ), i++,
If( Ends With( files[i], ".txt" ),
Eval( Eval Expr( open_expr ) );
Insert Into( L, files[i] );
M ||= dt[0, 5]; // Add column 4 (5 becaue of fronting spaces in files)
Close( dt, no save );
)
);
// Make into table
dt = As Table( M, <<COLUMN names=""></COLUMN>