CSV 轉陣列轉換器

將 CSV 或 TSV 轉成 JavaScript、Python、Java、C#、PHP、Go、Ruby、Rust 可直接貼上的陣列程式碼,可選二維陣列或以標題列為鍵的物件陣列。程式碼會隨輸入即時更新,所有處理都在瀏覽器內完成。

貼上 CSV 或 TSV,或將 .csv、.tsv、.txt 檔案拖放到這裡。

有效的 CSV · 4 列 · 4 欄 · 151 B

陣列程式碼 JavaScript

const data = [ {name: "John Doe", age: 25, city: "New York", active: true}, {name: "Jane Smith", age: 30, city: "London, UK", active: false}, {name: "Bob Johnson", age: 35, city: "Tokyo", active: true}, {name: "Alice Brown", age: 28, city: "San Francisco", active: true} ];

使用方法

  1. 開啟設定並選擇程式語言(JavaScript、Python、Java、C#、PHP、Go、Ruby 或 Rust),所選語言會顯示在輸出標頭
  2. 在左側面板貼上 CSV,或用「開啟檔案」開啟 .csv、.tsv 或 .txt 檔案,陣列程式碼會隨輸入顯示
  3. 在設定中調整分隔符號、輸出格式(二維陣列或物件陣列)、標題處理與型別偵測,摘要會顯示目前的值
  4. 一鍵複製產生的陣列程式碼,或下載為檔案在專案中使用

實用技巧

  • 將第一列作為標題,物件陣列的輸出會更好用
  • 自動偵測資料型別會把字串轉成適當的資料型別
  • 編輯器下方的一行會顯示讀取到的列數與欄數,有問題時也會說明該修正什麼
  • 所有處理都在瀏覽器中進行,不會將資料傳送到伺服器

把 CSV 每一列轉成各語言原生的陣列字面值

這個轉換器的作用

CSV 檔案不過是以分隔字元隔開的一列列值,但程式碼需要把這些列當成真正的陣列字面值來用。這個工具會解析 CSV 或 TSV 文字,重新寫成可以直接貼進專案的原始碼:可以是由列與欄組成的二維陣列,也可以是以標頭列作為鍵的物件陣列。它會讀取分隔字元,把每一列拆成欄位,再依你選的語言(JavaScript、Python、Java、C#、PHP、Go、Ruby、Rust)以其陣列與字串語法輸出結果。

程式碼會隨輸入即時更新,編輯器下方的檢查列會顯示讀取到的列數與欄數;文字無法讀取時,也會說明該修正什麼。

什麼時候用

每當你手上有 CSV 匯出的表格資料,又想把它當成腳本裡的字面值時就很好用:建立測試用的 fixture、把查詢表寫死在程式碼裡,或是不必另外寫檔案讀取就把小型資料集放進示範程式。由於每個目標語言都會輸出各自的原生語法,結果不必手動調整括號與引號就能直接編譯或執行。

物件陣列模式是把試算表變成結構化紀錄最快的方式:開啟標頭選項後,每一列都會變成以第一列為鍵的物件,可以直接拿來逐一走訪。若最終要的是資料檔而不是原始碼,那個形狀由CSV ↔ JSON 轉換器產出;而當 fixture 的文字欄需要填充用的假文時,可以向Lorem Ipsum 生成器要。

範例:三列變成陣列字面值

假設 CSV 第一列是 name,age,active,接著是 Alice,30,true 和 Bob,25,false。轉成 JavaScript 的二維陣列會是 [["name","age","active"],["Alice",30,true],["Bob",25,false]]。切換成物件陣列輸出,則會得到 [{"name":"Alice","age":30,"active":true},{"name":"Bob","age":25,"active":false}]。若改選 Python,同一份資料會以 True、False、None 取代 JavaScript 的字面值回傳。

分隔字元、引號與型別

分隔符號可以自訂:逗號、分號、Tab、管道符號,遇到特殊情況還能指定自訂字元,這對使用分號的歐洲匯出檔或 TSV 檔案很重要。自動型別偵測會決定像 30 或 true 這樣的欄位要保留為數字或布林值,而不是加引號的字串;若想把所有值都保留為文字,可以將它關閉。開啟的檔案(CSV、TSV 或 TXT)與貼上的文字以相同方式解析。

常見問題

是的。可無限次產生 JavaScript、Python、Java、C#、PHP、Go、Ruby 或 Rust 的陣列字面值,二維陣列或物件陣列都可以。沒有付費方案,也沒有使用次數上限。