<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xml:lang="ja-JP">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="Content-Style-Type" content="text/css" />
<link rel="stylesheet" type="text/css" href="../style.css" />
<title>Tripletail::CSV - CSV のパースと生成</title>
<link rel="index" href="./" />
<link rel="up" href="../" />
</head>
<body>
<div class="pod_title_block">
Tripletail::CSV - CSV のパースと生成
</div>
<!-- Begin TABLE_OF_CONTENTS -->
<div class="pod_toc">
<p>
<strong><span class="pod_lang">TABLE OF CONTENTS</span></strong>
</p>
<ul>
<li><a href="#NAME">
<span class="pod_lang">NAME
</span></a>
</li>
<li><a href="#SYNOPSIS">
<span class="pod_lang">SYNOPSIS
</span></a>
</li>
<li><a href="#DESCRIPTION">
<span class="pod_lang">DESCRIPTION
</span></a>
<ul>
<li><a href="#METHODS">
<span class="pod_lang">METHODS
</span></a>
</li>
</ul>
</li>
<li><a href="#BUGS">
<span class="pod_lang">BUGS
</span></a>
</li>
<li><a href="#SEE_ALSO">
<span class="pod_lang">SEE ALSO
</span></a>
</li>
<li><a href="#AUTHOR_INFORMATION">
<span class="pod_lang">AUTHOR INFORMATION
</span></a>
</li>
</ul>
</div>
<!-- End TABLE_OF_CONTENTS -->
<!-- Begin CONTENT -->
<!-- =encoding utf-8 -->
<hr />
<h1><a id="NAME">
<span class="pod_lang">NAME
</span></a></h1>
<p>
<span class="pod_lang">Tripletail::CSV - CSV のパースと生成
</span>
</p>
<hr />
<h1><a id="SYNOPSIS">
<span class="pod_lang">SYNOPSIS
</span></a></h1>
<pre class="pod_verbatim"><code> # パース
my $csv = $TL->getCsv;
my $parser = $csv->parseCsv($CGI->getFile('upload'));
while (my $row = $parser->next) {
# $row: ['カラム1', 'カラム2', ...]
}
# 生成
$TL->print($csv->makeCsv([ qw(aaa bbb ccc) ]), "\n");
$TL->print($csv->makeCsv([ qw(aaa bbb ccc) ]), "\n");</code></pre>
<hr />
<h1><a id="DESCRIPTION">
<span class="pod_lang">DESCRIPTION
</span></a></h1>
<p>
<span class="pod_lang">CSV のパースと生成を行う為のクラス。
カンマを含むカラム、改行コードを含むカラム等も
正しく処理する事が出来る。
</span>
</p>
<p>
<span class="pod_lang">文字列のパースの他に、ファイルハンドルからのパースも可能。
</span>
</p>
<h2><a id="METHODS">
<span class="pod_lang">METHODS
</span></a></h2>
<dl>
<dt><a id="X$TL->getCsv"><span class="pod_lang"><code class="pod_iseq_C">$TL->getCsv</code>
</span></a></dt>
<dd>
<pre class="pod_verbatim"><code> my $csv = $TL->getCsv;</code></pre>
<p>
<span class="pod_lang"><a href="http://search.cpan.org/perldoc/Tripletail::CSV">Tripletail::CSV</a> オブジェクトを取得する。
</span>
</p>
</dd>
<dt><a id="parseCsv"><span class="pod_lang"><code class="pod_iseq_C">parseCsv</code>
</span></a></dt>
<dd>
<pre class="pod_verbatim"><code> my $parser = $csv->parseCsv("a,b,c,d,e");
my $parser = $csv->parseCsv(IO::Scalar->new(\"a,b,c,d,e"));</code></pre>
<p>
<span class="pod_lang">与えられた文字列またはファイルハンドルから
パーサオブジェクトを生成する。
</span>
</p>
<p>
<span class="pod_lang">返されたオブジェクトに対して <code class="pod_iseq_C">next</code> メソッドを一度呼ぶ度に、
一行分のデータが配列リファレンスで返される。
最後の行を読んだ後は undef が返される。
</span>
</p>
<pre class="pod_verbatim"><code> while (my $row = $parser->next) {
...
}</code></pre>
<p>
<span class="pod_lang">CSV に問題があってパースできない場合は、<code class="pod_iseq_C">next</code> メソッドを呼んだ
時に例外が発生する。
</span>
</p>
</dd>
<dt><a id="makeCsv"><span class="pod_lang"><code class="pod_iseq_C">makeCsv</code>
</span></a></dt>
<dd>
<pre class="pod_verbatim"><code> my $line = $csv->makeCsv([1, 2, 3]);</code></pre>
<p>
<span class="pod_lang">与えられた配列リファレンスから CSV 1行を生成して返す。
戻り値の末尾に改行文字は付加されない。
</span>
</p>
</dd>
</dl>
<hr />
<h1><a id="BUGS">
<span class="pod_lang">BUGS
</span></a></h1>
<p>
<span class="pod_lang">このモジュールは <a href="http://search.cpan.org/perldoc/Text::CSV_XS">Text::CSV_XS</a> に依存しており、もしそれが利用可能
でない状態で <code class="pod_iseq_C">$TL->getCsv</code> を呼ぶと例外が発生する。
</span>
</p>
<hr />
<h1><a id="SEE_ALSO">
<span class="pod_lang">SEE ALSO
</span></a></h1>
<dl>
<dt><a id="X_"><span class="pod_lang"><a href=".././Tripletail.html">Tripletail</a>
</span></a></dt>
<dd>
</dd>
<dt><a id="X__00"><span class="pod_lang"><a href="http://search.cpan.org/perldoc/Text::CSV_XS">Text::CSV_XS</a>
</span></a></dt>
<dd>
</dd>
</dl>
<hr />
<h1><a id="AUTHOR_INFORMATION">
<span class="pod_lang">AUTHOR INFORMATION
</span></a></h1>
<ul>
<p>
<span class="pod_lang">Copyright 2006 YMIRLINK Inc.
</span>
</p>
<p>
<span class="pod_lang">This framework is free software; you can redistribute it and/or modify it under the same terms as Perl itself
</span>
</p>
<p>
<span class="pod_lang">このフレームワークはフリーソフトウェアです。あなたは Perl と同じライセンスの 元で再配布及び変更を行うことが出来ます。
</span>
</p>
<p>
<span class="pod_lang">Address bug reports and comments to: tl@tripletail.jp
</span>
</p>
<p>
<span class="pod_lang">HP : http://tripletail.jp/
</span>
</p>
</ul>
<!-- End CONTENT -->
<div class="pod_title_block">
Tripletail::CSV - CSV のパースと生成
</div>
<!-- Begin INDEX -->
<hr />
<h1><a id="INDEX"><span class="pod_lang">INDEX</span></a></h1>
<div class="pod_idx_outer">
<ul class="pod_idx">
<li><a href="#X$TL->getCsv">$TL->getCsv</a></li>
<li><a href="#AUTHOR_INFORMATION">AUTHOR INFORMATION</a></li>
<li><a href="#BUGS">BUGS</a></li>
<li><a href="#DESCRIPTION">DESCRIPTION</a></li>
<li><a href="#METHODS">METHODS</a></li>
<li><a href="#NAME">NAME</a></li>
<li><a href="#SEE_ALSO">SEE ALSO</a></li>
<li><a href="#SYNOPSIS">SYNOPSIS</a></li>
<li><a href="#X__00">Text::CSV_XS</a></li>
<li><a href="#X_">Tripletail</a></li>
<li><a href="#makeCsv">makeCsv</a></li>
<li><a href="#parseCsv">parseCsv</a></li>
</ul>
</div>
<!-- End INDEX -->
<div class="pod_title_block">
Tripletail::CSV - CSV のパースと生成
</div>
</body>
</html>