{"id":888,"date":"2016-01-18T00:45:20","date_gmt":"2016-01-17T15:45:20","guid":{"rendered":"http:\/\/blog.tanitanin.net\/?p=888"},"modified":"2017-05-23T23:39:50","modified_gmt":"2017-05-23T14:39:50","slug":"post-888","status":"publish","type":"post","link":"https:\/\/blog.tanitanin.net\/?p=888","title":{"rendered":"Windows\u30d0\u30c3\u30c1\u30d5\u30a1\u30a4\u30eb\u3067CSV\u3092\u8aad\u307f\u8fbc\u3080"},"content":{"rendered":"<p>for\u306e\u30aa\u30d7\u30b7\u30e7\u30f3\u3067\u3042\u308btokens\u3092\u4f7f\u3063\u3066CSV\u3092\u8aad\u307f\u8fbc\u3080\u30b5\u30f3\u30d7\u30eb\u306f\u691c\u7d22\u3059\u308b\u3068\u305f\u304f\u3055\u3093\u51fa\u3066\u304f\u308b\u3051\u308c\u3069\uff0ctokens=1,2,&#8230;\u3060\u3068ASCII\u6587\u5b57(A-Z,a-z)\u306e\u6570\u3060\u3051\u3057\u304b\u5217\u30c7\u30fc\u30bf\u3092\u8aad\u307f\u8fbc\u3081\u306a\u3044\uff0e<\/p>\n<p>\u306a\u306e\u3067\uff0c\u305f\u304f\u3055\u3093\u5217\u30c7\u30fc\u30bf\u3092\u8aad\u3081\u308b\u3088\u3046\u306a\u30d0\u30c3\u30c1\u3092\u66f8\u3044\u305f\uff0e<br \/>\n(\u3064\u3044\u3067\u306b\u5148\u982d\u884c\u306f\u30d8\u30c3\u30c0\u3068\u3057\u3066\u8aad\u3080\u3053\u3068\u306b)<\/p>\n<pre><code>@echo off\nsetlocal enabledelayedexpansion\n\nset CSVFILE=%~dp0test.csv\n\nrem ===========================\nrem  Load CSV file\nrem ===========================\n:load_csv\nset COL_INDEX=\nset CSVTITLE=\nset CSVDATA=\n\nset IS_TITLE=TRUE\nset ROWNUM=0\nfor \/f \"eol=# delims=\" %%A in (%CSVFILE%) do (\n  rem echo call :read_csv_line \"%%A\"\n  call :read_csv_line \"%%A\"\n  set COLSIZE=!COLNUM!\n  for \/l %%n in (0,1,!COLSIZE!) do (\n    if defined IS_TITLE (\n      set TMP=!CSVLINE[%%n]!\n      set CSVTITLE[%%n]=!TMP!\n      set COL_INDEX[!TMP!]=%%n\n    ) else (\n      set CSVDATA[!ROWNUM!][%%n]=!CSVLINE[%%n]!\n    )\n  )\n  if defined IS_TITLE set IS_TITLE=\n  set \/a ROWNUM+=1\n)\nset \/a ROWSIZE=!ROWNUM!-1\nset \/a COLSIZE=!COLNUM!\n\nrem ===========================\nrem  Display CSV data\nrem ===========================\n\necho CSV Data Size [%ROWSIZE% x %COLSIZE%]\necho.\n\nfor \/l %%r in (1,1,!ROWSIZE!) do (\n  for \/l %%c in (0,1,!COLSIZE!) do (\n    set TITLE=!CSVTITLE[%%c]!\n    set DATA=!CSVDATA[%%r][%%c]!\n    echo Data %%r: !TITLE! = !DATA!\n  )\n)\n\ngoto end\n\nrem ===========================\nrem  Read CSV line\nrem ===========================\n:read_csv_line\n  set LINE=%1\n  rem echo call :read_csv_inner 0 %LINE%\n  call :read_csv_inner 0 %LINE%\n  goto :EOF\n\n:read_csv_inner\n  set NUM=%1\n  set LINE=%2\n  for \/f \"delims=, tokens=1,*\" %%A in (!LINE!) do (\n    set DATA=%%A\n    set REST=\"%%B\"\n    set CSVLINE[!NUM!]=!DATA!\n    rem echo ROW: !ROWNUM! COL: !NUM! DATA: !DATA! REST: !REST!\n    if not !REST!==\"\" (\n      set \/a NUM+=1\n      call :read_csv_inner !NUM! !REST!\n    )\n  )\n  set COLNUM=!NUM!\n  goto :EOF\n\n:end\npause\nendlocal\n\nrem Copyright (c) 2016 @tanitanin\nrem This software is released under the MIT License.\nrem http:\/\/opensource.org\/licenses\/mit-license.php\n<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>for\u306e\u30aa\u30d7\u30b7\u30e7\u30f3\u3067\u3042\u308btokens\u3092\u4f7f\u3063\u3066CSV\u3092\u8aad\u307f\u8fbc\u3080\u30b5\u30f3\u30d7\u30eb\u306f\u691c\u7d22\u3059\u308b\u3068\u305f\u304f\u3055\u3093\u51fa\u3066\u304f\u308b\u3051\u308c\u3069\uff0ctokens=1,2,&#8230;\u3060\u3068ASCII\u6587\u5b57(A-Z,a-z)\u306e\u6570\u3060\u3051\u3057\u304b\u5217\u30c7\u30fc\u30bf\u3092\u8aad\u307f\u8fbc\u3081\u306a\u3044\uff0e \u306a\u306e\u3067 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[1],"tags":[83,81,82],"class_list":["post-888","post","type-post","status-publish","format-standard","hentry","category-1","tag-csv","tag-windows","tag-82"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p5lSjy-ek","jetpack-related-posts":[{"id":472,"url":"https:\/\/blog.tanitanin.net\/?p=472","url_meta":{"origin":888,"position":0},"title":"Capistrano v3\u3092\u8a66\u3057\u3066\u307f\u308b(1)","author":"tanitanin","date":"2013\u5e7410\u67088\u65e5","format":false,"excerpt":"\u3053\u3093\u306b\u3061\u306f\uff0c\u305f\u306b\u305f\u306b\u3067\u3059\uff0e Deploy\u306e\u305f\u3081\u306e\u30c4\u30fc\u30eb\u3068\u3057\u3066\u6709\u540d\u306aCapistrano\u3067\u3059\u304c\uff0c6\u6708\u306b\u2026","rel":"","context":"\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0","block_context":{"text":"\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0","link":"https:\/\/blog.tanitanin.net\/?cat=64"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":206,"url":"https:\/\/blog.tanitanin.net\/?p=206","url_meta":{"origin":888,"position":1},"title":"\u3055\u304f\u3089VPS\u306bgcc4.7.1\u3092\u4eee\u7d44\u307f\u3057\u305f\u3068\u304d\u306e\u30e1\u30e2","author":"tanitanin","date":"2012\u5e748\u67087\u65e5","format":false,"excerpt":"\u4eca\u56de\u306f\u305a\u3063\u3068\u5165\u308c\u305f\u304b\u3063\u305fgcc 4.7.1 \u3092\u3064\u3044\u306b\u5165\u308c\u308b\u304a\u8a71\u3002 \u00a0 gcc\u3092\u5165\u308c\u308b\u3068\u306f\u3044\u2026","rel":"","context":"\u672a\u5206\u985e","block_context":{"text":"\u672a\u5206\u985e","link":"https:\/\/blog.tanitanin.net\/?cat=1"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":91,"url":"https:\/\/blog.tanitanin.net\/?p=91","url_meta":{"origin":888,"position":2},"title":"\u3066\u3075\u3081\u3082","author":"tanitanin","date":"2010\u5e747\u670811\u65e5","format":false,"excerpt":"TeX\u3092\u3072\u3055\u3057\u3076\u308a\u306b\u4f7f\u3063\u305f\u3089\u61b6\u3048\u3066\u306a\u3044\u3053\u3068\u3060\u3089\u3051\u3060\u3063\u305f\u306e\u3067\u30e1\u30e2\u30e1\u30e2\u30fb\u30fb\u30fb \u30c6\u30f3\u30d7\u30ec\u30fc\u30c8 \\docum\u2026","rel":"","context":"\u672a\u5206\u985e","block_context":{"text":"\u672a\u5206\u985e","link":"https:\/\/blog.tanitanin.net\/?cat=1"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":445,"url":"https:\/\/blog.tanitanin.net\/?p=445","url_meta":{"origin":888,"position":3},"title":"capistrano\u3067rails\u3058\u3083\u306a\u3044\u3082\u306e\u3092deploy\u3059\u308b","author":"tanitanin","date":"2013\u5e745\u670828\u65e5","format":false,"excerpt":"\u3053\u3093\u306b\u3061\u306f\uff0c\u305f\u306b\u305f\u306b\u3067\u3059\uff0e Rails\u306e\u30c7\u30d7\u30ed\u30a4\u30c4\u30fc\u30eb\u3068\u3057\u3066\u6709\u540d\u306a\u306e\u304ccapistrano\u3067\u3059\u304c\uff0c \u2026","rel":"","context":"\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0","block_context":{"text":"\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0","link":"https:\/\/blog.tanitanin.net\/?cat=64"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":387,"url":"https:\/\/blog.tanitanin.net\/?p=387","url_meta":{"origin":888,"position":4},"title":"Rails3\u306e\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092nginx+unicorn\u4e0a\u3067\u52d5\u304b\u3059\u30e1\u30e2","author":"tanitanin","date":"2013\u5e743\u67088\u65e5","format":false,"excerpt":"Rails\u3092nginx\u3068unicorn\u3067\u52d5\u304b\u3059\u3068\u901f\u3044\u3068\u3044\u3046\u30a6\u30ef\u30b5\u3092\u8033\u306b\u3057\u305f\u306e\u3067\uff0c\u3055\u3063\u305d\u304f\u3084\u3063\u3066\u307f\u308b\u3053\u2026","rel":"","context":"Rails","block_context":{"text":"Rails","link":"https:\/\/blog.tanitanin.net\/?cat=73"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":783,"url":"https:\/\/blog.tanitanin.net\/?p=783","url_meta":{"origin":888,"position":5},"title":"mysql \u30b3\u30de\u30f3\u30c9\u306e\u5165\u529b\u5c65\u6b74\u3092\u6d88\u3059","author":"tanitanin","date":"2014\u5e7412\u670811\u65e5","format":false,"excerpt":"CentOS 7 \u306b MariaDB \u3092\u5165\u308c\u308b\u3068\uff0c\u306f\u3058\u3081\u306broot\u306e\u30d1\u30b9\u30ef\u30fc\u30c9\u3092\u8a2d\u5b9a\u3059\u308b\u305f\u3081\u306bmys\u2026","rel":"","context":"\u672a\u5206\u985e","block_context":{"text":"\u672a\u5206\u985e","link":"https:\/\/blog.tanitanin.net\/?cat=1"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"_links":{"self":[{"href":"https:\/\/blog.tanitanin.net\/index.php?rest_route=\/wp\/v2\/posts\/888","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.tanitanin.net\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.tanitanin.net\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.tanitanin.net\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.tanitanin.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=888"}],"version-history":[{"count":12,"href":"https:\/\/blog.tanitanin.net\/index.php?rest_route=\/wp\/v2\/posts\/888\/revisions"}],"predecessor-version":[{"id":900,"href":"https:\/\/blog.tanitanin.net\/index.php?rest_route=\/wp\/v2\/posts\/888\/revisions\/900"}],"wp:attachment":[{"href":"https:\/\/blog.tanitanin.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=888"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.tanitanin.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=888"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.tanitanin.net\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=888"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}