VS Code 擴充套件 · 免費

媒體檔,
每個欄位看得見

寫好欄位規格,固定長度檔的每個欄位就自動上色。多一碼、少一碼、日期不存在、身分證檢查碼錯、尾筆加總對不上,開檔當下全部標出來。Big5 中文算 2 碼也沒問題。

code --install-extension PeterYang.fixed-width-inspector

這些錯誤,肉眼很難發現,開檔就自動標出來:

2000100100000033林志豪…多了 3 碼整行長度錯,後面全部錯位
A123456780檢查碼錯誤身分證、統一編號
11502312 月沒有 31 日民國年、西元年都認得
總筆數 00000011明細只有 10 筆尾筆筆數、金額加總
…AAAA林0000008…切到中文字Big5 中文 2 碼,邊界落在中間
第 1–10 碼畫面

還是同一個文字檔,只是看得懂了

不會改動檔案內容,也不用轉檔。以下都是在 VS Code 裡實際操作的畫面。

Fixed-Width Inspector 欄位上色:每個欄位不同顏色,每行前面有首筆、明細、尾筆標籤
fields.png
欄位上色與記錄別標籤相鄰欄位用不同顏色,一眼看出邊界。每行前面標出首筆、明細、尾筆,認不出的行標紅色「未知」;有問題的地方加上紅色波浪底線。
Fixed-Width Inspector 滑鼠停在欄位上顯示說明
hover.png
滑鼠停上去就有說明欄位名稱、第幾碼到第幾碼、原值、解析後的值,有錯的話連原因一起說。
Fixed-Width Inspector 問題面板列出所有錯誤
problems.png
錯誤全部列出來「問題」面板列出每一個錯誤和所在位置,點一下就跳過去。
Fixed-Width Inspector 表格檢視,錯誤的格子標紅
table.png
表格檢視每種記錄一個分頁,金額、日期換成好讀的格式,錯的格子標紅。點格子跳回原檔,也能一鍵匯出成 Excel 開得了的 CSV。
Fixed-Width Inspector 從範本建立 schema,勾選首筆、明細、尾筆
template.png
從範本開始勾選檔案有首筆、明細、尾筆中的哪幾種,範例規格就建在檔案旁邊,馬上套用。
Fixed-Width Inspector 撰寫 schema 時的自動完成與說明
schema.png
寫規格有提示撰寫欄位規格時有自動完成和說明,打錯參數會直接標出來。
第 11–20 碼功能

以前要拿尺對、拿計算機加,現在交給 VS Code

銀行扣款檔、薪轉檔、健保與稅務申報檔,只要是「靠位置切欄位」的檔案都適用。

看得見 不改檔案

  • 欄位上色2–4 色交替,亮色、暗色主題都清楚,顏色可以自訂。
  • 記錄別標籤每行前面顯示首筆、明細、尾筆,寬度固定不影響對齊。
  • 欄位說明滑鼠停上去看名稱、位置、原值、解析值與錯誤原因。
  • 狀態列游標移到哪,就顯示「帳號|第 2–15 碼」。

自動檢核 邊打邊檢查

  • 行長度多幾碼、少幾碼直接告訴你。
  • 欄位格式數字、金額、日期、代碼清單、保留欄位、正規表示式。
  • 記錄別認不出的行、首筆不在第一行、尾筆不在最後一行。
  • 跨行加總尾筆的總筆數、總金額和明細對不對得起來。

台灣媒體檔 在地需求

  • Big5 位元組中文算 2 碼、英數算 1 碼,邊界切到中文字會提示。
  • 民國年1151020 這種 7 碼日期也能檢查是否存在。
  • 身分證、統編內建檢查碼驗證,含新式居留證號。
  • 編碼開錯Big5 檔被當成 UTF-8 開時會提示,一鍵重新開啟。

表格與匯出 交給別人看

  • 表格檢視依記錄別分頁,只看有問題的列、搜尋、游標同步。
  • 匯出 CSVExcel 直接開,中文不亂碼,帳號前面的 0 不會不見。
  • 防公式注入以 = + 開頭的內容不會被 Excel 當成公式執行。
  • 中英介面訊息、說明、表格都有繁體中文和英文。
第 21–30 碼欄位規格

把格式說明書抄成一份 JSON,就搞定

在媒體檔旁邊建一個 .fixedwidth 資料夾,放進這份規格。之後每次打開同名的檔案都會自動套用。

  • 位置照抄就好:起始位置和長度跟銀行給的格式說明一樣,從 1 開始算。
  • 不用從零開始:執行「Create Schema from Template」產生範例再改。
  • 不確定怎麼寫?看設定說明,每種欄位都有可以直接複製的範例。
.fixedwidth/ach.json
{
  "name": "ACH 扣款媒體檔",
  "filePattern": "ACH*.txt",
  "encoding": "big5",
  "lineLength": 250,
  "records": [
    {
      "type": "detail",
      "fields": [
        { "name": "帳號", "start": 2,  "length": 14, "type": "numeric" },
        { "name": "戶名", "start": 16, "length": 40, "type": "text" },
        { "name": "金額", "start": 56, "length": 13, "type": "amount", "decimals": 2 }
      ]
    }
  ]
}
第 31–40 碼安裝

一分鐘裝好

STEP 1

打開擴充功能

在 VS Code 按 ⇧⌘X(Windows 是 Ctrl+Shift+X),搜尋 Fixed-Width Inspector,按「安裝」。

STEP 2

放一份欄位規格

在媒體檔旁邊建立 .fixedwidth/,或執行「Create Schema from Template」自動產生。

STEP 3

打開媒體檔

欄位自動上色、錯誤自動標出;右上角的表格圖示可以切成表格檢視。

需求 VS Code 1.85 以上 編碼:UTF-8、Big5、MS950;長度以位元組或字元計 介面:English、繁體中文