私はOPEN-OFFICEを使用してCSVを処理および保存しています。カンマ区切り文字と '"'も使用しています。ただし、CSVを保存するときに、すべての数値がカプセル化されているわけではありません。Open-Officeに数値をテキストとして処理させ、カプセル化させるにはどうすればよいですか。例:
"store","website","attribute_set","type","sku","name","price","categories","description","qty","sizet","is_in_stock","status","visibility","tax_class_id"
"admin","base","test","simple","T010013-012","Test12","12","test/test","Desc12",12,"S","1","Enabled","Catalog, Search","Taxable Goods"
"admin","base","test","simple","T010013-013","Test13","13","test/test","Desc13",13,"M","1","Enabled","Catalog, Search","Taxable Goods"
"admin","base","test","simple","T010013-014","Test14","14","test/test","Desc14",14,"L","1","Enabled","Catalog, Search","Taxable Goods"
"admin","base","test","simple","T010013-015","Test15","15","test/test","Desc15",15,"XL","1","Enabled","Catalog, Search","Taxable Goods"
"admin","base","test","simple","T010013-016","Test16","16","test/test","Desc16",16,"XXL","1","Enabled","Catalog, Search","Taxable Goods"
"admin","base","test","configurable","T010013","TestParent","5","test/test","DescParent","30","","1","Enabled","Catalog, Search","Taxable Goods"
ご協力ありがとうございました。 PS:MagentoにMAGMIスクリプトを使用しています。商品のアップロード
これには2つのステップが必要です。
数字を保持するセルをテキストとしてフォーマットします(列全体でそのフォーマットが必要になるため、そのフォーマットを列全体に適用するだけで、行を追加するときにすべての新しいセルをフォーマットする必要はありません)。
すべてのテキストセルを引用するようにエクスポートフィルター設定を変更します。
この設定で、Calcはこのシートを保存する必要があります。
次のように:
"bar","42"
"foo","57"
ところで、Calcは完全に標準に準拠しておりnot、デフォルトですべての数値を引用します。少なくとも、 RFC 418 はすべてのフィールドを引用する必要はありません。
正しいSQLインポート構文を使用して、この問題を回避する簡単な方法があります。次のことを考慮してください。
LOAD DATA LOCAL INFILE '/yourfile.csv'
INTO TABLE yourtable
FIELDS TERMINATED BY ','
OPTIONALLY ENCLOSED BY '"';
OPTIONALLY ENCLOSED BY '"'行は、Open/LibreOfficeなどのセカンダリアプリケーションからのエクスポート時にCSVがどのようにフォーマットされるかをいじくり回すことなく、数値行の問題を解決するはずです。
OpenOfficeまたはExcelでオプションを見つけようとするのではなく、これを行うためのRubyスクリプトを少し書きました。それでも、それらを見つけることができません。
require 'csv'
rows = CSV.open(ARGV[0]).readlines
CSV.open("#{ARGV[0].split('.')[0]}_qgisfriendly.csv", "w", {:force_quotes => true}) do |csv|
rows.each do |row|
csv << row
end
end