2017-10-05 7 views

答えて

1

スプレッドシートのフォーマット方法によって異なります。私の標準的な方法は、Excelを使用して.csvファイル形式でデータをエクスポートし、次にNeil Van Dykeのcsv-readingパッケージを使用して解析することです。

これは役立ちますか?

+0

はい、それはオプションだが、私は信頼性の高いソリューションを必要としますユーザーの視点からユーザーがxlsxをcsvに変換する必要がある場合、エラーのための大きなスペースがあります。私はphpexcelツールがExcelファイルを読み込めるようにしていますが、ラケットに似たようなものがあるかもしれません。 – Jaro

+0

Excelの内部形式が時々動くターゲットになることがあります。私はちょうどいくつかの速読をしましたが、フォーマットは実際に文書化されているようです(Microsoftもうまくいきました)が、既存の他の2つのISO標準(おそらくは数百ページ)に300ページ拡張されています。明るい面では、実際にはXML言語のように聞こえるので、間違いなくRacketのsxmlパッケージを使用して始めることができます。これを超えて、xlsxファイルの限られたサブセットに対して非常に信頼性の高いものをまとめることができます。しかし、簡単ではありません。 –

0

ここでは、追加のパッケージを必要としないバージョンがあります。 ExcelからCSV(comma separated values)形式でファイルをエクスポートしたと仮定します。 それはおそらく、専用のパッケージよりも少ない堅牢ですが、簡単な目的のために十分に良いことがあります。

#lang racket 

(define lines (file->lines "my-csv-file.csv")) 

; Change this to the character you chose for separating values when 
; exporting the file in csv format (comma "," by default) 
(define sep (regexp-quote ",")) 

(map (λ(l)(string-split l sep #:trim? #f #:repeat? #t)) 
    lines) 
関連する問題