Merge tag 'csv2edn-0.1.6'
This commit is contained in:
commit
9d042154b0
16
README.md
16
README.md
|
@ -16,29 +16,29 @@ this file (which is manually maintained) is in error.
|
||||||
|
|
||||||
### Leiningen/Boot
|
### Leiningen/Boot
|
||||||
|
|
||||||
[csv2edn "0.1.5"]
|
[csv2edn "0.1.6"]
|
||||||
|
|
||||||
### Clojure CLI/deps.edn
|
### Clojure CLI/deps.edn
|
||||||
|
|
||||||
csv2edn {:mvn/version "0.1.5"}
|
csv2edn {:mvn/version "0.1.6"}
|
||||||
|
|
||||||
### Gradle
|
### Gradle
|
||||||
|
|
||||||
compile 'csv2edn:csv2edn:0.1.5'
|
compile 'csv2edn:csv2edn:0.1.6'
|
||||||
|
|
||||||
### Maven
|
### Maven
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>csv2edn</groupId>
|
<groupId>csv2edn</groupId>
|
||||||
<artifactId>csv2edn</artifactId>
|
<artifactId>csv2edn</artifactId>
|
||||||
<version>0.1.5</version>
|
<version>0.1.6</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
## Usage: as a standalone commandline tool
|
## Usage: as a standalone commandline tool
|
||||||
|
|
||||||
To run from the command line:
|
To run from the command line:
|
||||||
|
|
||||||
$ java -jar csv2edn-0.1.5-standalone.jar [options]
|
$ java -jar csv2edn-0.1.6-standalone.jar [options]
|
||||||
|
|
||||||
### Options
|
### Options
|
||||||
|
|
||||||
|
@ -59,17 +59,17 @@ Where options are:
|
||||||
The simplest possible use is to simply use this in a pipeline:
|
The simplest possible use is to simply use this in a pipeline:
|
||||||
|
|
||||||
$ cat path/to/file.csv |\
|
$ cat path/to/file.csv |\
|
||||||
java -jar csv2edn-0.1.5-standalone.jar > path/to/file.edn
|
java -jar csv2edn-0.1.6-standalone.jar > path/to/file.edn
|
||||||
|
|
||||||
Exactly the same behaviour can be achieved by specifying input and output
|
Exactly the same behaviour can be achieved by specifying input and output
|
||||||
paths:
|
paths:
|
||||||
|
|
||||||
$ java -jar csv2edn-0.1.5-standalone.jar \
|
$ java -jar csv2edn-0.1.6-standalone.jar \
|
||||||
-i path/to/file.csv -o path/to/file.edn
|
-i path/to/file.csv -o path/to/file.edn
|
||||||
|
|
||||||
or
|
or
|
||||||
|
|
||||||
$ java -jar csv2edn-0.1.5-standalone.jar \
|
$ java -jar csv2edn-0.1.6-standalone.jar \
|
||||||
--input path/to/file.csv --output path/to/file.edn
|
--input path/to/file.csv --output path/to/file.edn
|
||||||
|
|
||||||
## Usage: as a library
|
## Usage: as a library
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
(defproject csv2edn "0.1.5"
|
(defproject csv2edn "0.1.6"
|
||||||
:description "Simple command line utility to convert CSV files to EDN."
|
:description "Simple command line utility to convert CSV files to EDN."
|
||||||
:url "https://github.com/simon-brooke/csv2edn"
|
:url "https://github.com/simon-brooke/csv2edn"
|
||||||
:license {:name "GPL-2.0-or-later WITH Classpath-exception-2.0"
|
:license {:name "GPL-2.0-or-later WITH Classpath-exception-2.0"
|
||||||
|
|
|
@ -14,9 +14,16 @@
|
||||||
(defn maybe-read
|
(defn maybe-read
|
||||||
"If a string represents an integer or real, we'd really like to have that
|
"If a string represents an integer or real, we'd really like to have that
|
||||||
integer or real in our data rather than a string representation of it."
|
integer or real in our data rather than a string representation of it."
|
||||||
|
;; TODO: this is actually quite difficult and the current solution won't
|
||||||
|
;; correctly handle numbers in scientific notation, ratios, or imaginary
|
||||||
|
;; numbers.
|
||||||
[^String s]
|
[^String s]
|
||||||
(try
|
(try
|
||||||
(read-string s)
|
(if
|
||||||
|
(re-matches #"^ *[+-]?[0-9]*\.?[0-9]*" s)
|
||||||
|
(let [v (read-string s)]
|
||||||
|
(if (number? v) v s))
|
||||||
|
s)
|
||||||
(catch Exception _ s)))
|
(catch Exception _ s)))
|
||||||
|
|
||||||
(defn csv->edn
|
(defn csv->edn
|
||||||
|
|
Loading…
Reference in a new issue