On Fri, 18 Jul 2014 07:53:57 -0700 Jonathan Leslie <[email protected]> wrote:
> What I do is I never use a CSV file as a "Comma separated Values" > file but rather as a "Character separated Values" file, but rather > use a Character, º (<alt>0186), a legal character but not one on the > keyboard, as the separator character. Better might be to use ASCII as designed. It defines position 30 as a record separator. See https://ronaldduncan.wordpress.com/2009/10/31/text-file-formats-ascii-delimited-text-not-csv-or-tab-delimited-text/ and the Hacker News discussion: https://news.ycombinator.com/item?id=7474600 The good and bad about ASCII 30 is that it's not printable. Because the "character" has no meaning in any language, it cannot appear in any text, and so requires no escapement. On the other hand, it can be confusing because it normally isn't displayed. However, that's easy to solve, $ cat rs; cat -v rs; vis rs; hexdump -C rs abcdefgh a^^b^^c^^d^^e^^f^^g^^h^^ a\^^b\^^c\^^d\^^e\^^f\^^g\^^h\^^ 00000000 61 1e 62 1e 63 1e 64 1e 65 1e 66 1e 67 1e 68 1e | a.b.c.d.e.f.g.h.| 00000010 0a |.| 00000011 If sqlite3 supported -separator RS perhaps more people would use it? --jkl _______________________________________________ sqlite-users mailing list [email protected] http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

