workbook 0.3.1 → 0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.yardoc/checksums +21 -18
- data/.yardoc/object_types +0 -0
- data/.yardoc/objects/root.dat +0 -0
- data/Gemfile.lock +4 -4
- data/README.md +8 -5
- data/doc/RubyXL/Cell.html +18 -19
- data/doc/RubyXL/Workbook.html +116 -114
- data/doc/RubyXL.html +3 -3
- data/doc/Workbook/Book.html +513 -145
- data/doc/Workbook/Cell.html +181 -170
- data/doc/Workbook/Format.html +591 -77
- data/doc/Workbook/Modules/RawObjectsStorage.html +39 -45
- data/doc/Workbook/Modules/TableDiffSort.html +225 -87
- data/doc/Workbook/Modules/TypeParser.html +182 -131
- data/doc/Workbook/Modules.html +3 -3
- data/doc/Workbook/Readers/CsvReader.html +101 -39
- data/doc/Workbook/Readers/OdsReader.html +564 -0
- data/doc/Workbook/Readers/TxtReader.html +12 -14
- data/doc/Workbook/Readers/XlsReader.html +154 -138
- data/doc/Workbook/Readers/XlsShared.html +71 -72
- data/doc/Workbook/Readers/XlsxReader.html +89 -82
- data/doc/Workbook/Readers.html +6 -6
- data/doc/Workbook/Row.html +421 -206
- data/doc/Workbook/Sheet.html +379 -32
- data/doc/Workbook/Table.html +328 -90
- data/doc/Workbook/Template.html +55 -60
- data/doc/Workbook/Writers/CsvTableWriter.html +33 -8
- data/doc/Workbook/Writers/HtmlWriter.html +393 -0
- data/doc/Workbook/Writers/XlsWriter.html +132 -92
- data/doc/Workbook/Writers.html +5 -5
- data/doc/Workbook.html +16 -4
- data/doc/_index.html +45 -15
- data/doc/class_list.html +1 -1
- data/doc/css/style.css +10 -0
- data/doc/file.README.html +53 -48
- data/doc/frames.html +1 -1
- data/doc/index.html +53 -48
- data/doc/method_list.html +232 -56
- data/doc/top-level-namespace.html +3 -3
- data/lib/workbook/book.rb +27 -1
- data/lib/workbook/format.rb +46 -7
- data/lib/workbook/modules/type_parser.rb +8 -1
- data/lib/workbook/readers/ods_reader.rb +93 -0
- data/lib/workbook/row.rb +7 -0
- data/lib/workbook/sheet.rb +10 -0
- data/lib/workbook/version.rb +1 -1
- data/lib/workbook/writers/html_writer.rb +56 -0
- data/test/artifacts/book_with_tabs_and_colours.ods +0 -0
- data/test/artifacts/complex_types.ods +0 -0
- data/test/artifacts/excel_different_types.ods +0 -0
- data/test/artifacts/simple_sheet.ods +0 -0
- data/test/test_book.rb +6 -0
- data/test/test_format.rb +39 -0
- data/test/test_modules_type_parser.rb +2 -0
- data/test/test_readers_csv_reader.rb +44 -0
- data/test/test_readers_ods_reader.rb +51 -0
- data/test/test_readers_txt_reader.rb +53 -0
- data/test/test_row.rb +12 -0
- data/test/test_sheet.rb +12 -0
- data/test/test_writers_html_writer.rb +37 -0
- data/workbook.gemspec +2 -2
- metadata +21 -4
data/doc/Workbook/Book.html
CHANGED
@@ -6,7 +6,7 @@
|
|
6
6
|
<title>
|
7
7
|
Class: Workbook::Book
|
8
8
|
|
9
|
-
— Documentation by YARD 0.8.
|
9
|
+
— Documentation by YARD 0.8.5.2
|
10
10
|
|
11
11
|
</title>
|
12
12
|
|
@@ -93,7 +93,7 @@
|
|
93
93
|
|
94
94
|
|
95
95
|
<dt class="r2">Includes:</dt>
|
96
|
-
<dd class="r2"><span class='object_link'><a href="Readers/CsvReader.html" title="Workbook::Readers::CsvReader (module)">Readers::CsvReader</a></span>, <span class='object_link'><a href="Readers/TxtReader.html" title="Workbook::Readers::TxtReader (module)">Readers::TxtReader</a></span>, <span class='object_link'><a href="Readers/XlsReader.html" title="Workbook::Readers::XlsReader (module)">Readers::XlsReader</a></span>, <span class='object_link'><a href="Readers/XlsShared.html" title="Workbook::Readers::XlsShared (module)">Readers::XlsShared</a></span>, <span class='object_link'><a href="Readers/XlsxReader.html" title="Workbook::Readers::XlsxReader (module)">Readers::XlsxReader</a></span>, <span class='object_link'><a href="Writers/XlsWriter.html" title="Workbook::Writers::XlsWriter (module)">Writers::XlsWriter</a></span></dd>
|
96
|
+
<dd class="r2"><span class='object_link'><a href="Readers/CsvReader.html" title="Workbook::Readers::CsvReader (module)">Readers::CsvReader</a></span>, <span class='object_link'><a href="Readers/OdsReader.html" title="Workbook::Readers::OdsReader (module)">Readers::OdsReader</a></span>, <span class='object_link'><a href="Readers/TxtReader.html" title="Workbook::Readers::TxtReader (module)">Readers::TxtReader</a></span>, <span class='object_link'><a href="Readers/XlsReader.html" title="Workbook::Readers::XlsReader (module)">Readers::XlsReader</a></span>, <span class='object_link'><a href="Readers/XlsShared.html" title="Workbook::Readers::XlsShared (module)">Readers::XlsShared</a></span>, <span class='object_link'><a href="Readers/XlsxReader.html" title="Workbook::Readers::XlsxReader (module)">Readers::XlsxReader</a></span>, <span class='object_link'><a href="Writers/HtmlWriter.html" title="Workbook::Writers::HtmlWriter (module)">Writers::HtmlWriter</a></span>, <span class='object_link'><a href="Writers/XlsWriter.html" title="Workbook::Writers::XlsWriter (module)">Writers::XlsWriter</a></span></dd>
|
97
97
|
|
98
98
|
|
99
99
|
|
@@ -222,6 +222,31 @@ reference to a template class, storing shared formatting options.</p>
|
|
222
222
|
<p>Create an instance from a file, using open.</p>
|
223
223
|
</div></span>
|
224
224
|
|
225
|
+
</li>
|
226
|
+
|
227
|
+
|
228
|
+
<li class="public ">
|
229
|
+
<span class="summary_signature">
|
230
|
+
|
231
|
+
<a href="#read-class_method" title="read (class method)">+ (Workbook::Book) <strong>read</strong>(stringio_or_string, filetype) </a>
|
232
|
+
|
233
|
+
|
234
|
+
|
235
|
+
</span>
|
236
|
+
|
237
|
+
|
238
|
+
|
239
|
+
|
240
|
+
|
241
|
+
|
242
|
+
|
243
|
+
|
244
|
+
|
245
|
+
<span class="summary_desc"><div class='inline'>
|
246
|
+
<p>Create an instance from the given stream or string, which should be in CSV
|
247
|
+
or TXT format.</p>
|
248
|
+
</div></span>
|
249
|
+
|
225
250
|
</li>
|
226
251
|
|
227
252
|
|
@@ -425,6 +450,30 @@ to the extension determined loaded.</p>
|
|
425
450
|
default is a new sheet).</p>
|
426
451
|
</div></span>
|
427
452
|
|
453
|
+
</li>
|
454
|
+
|
455
|
+
|
456
|
+
<li class="public ">
|
457
|
+
<span class="summary_signature">
|
458
|
+
|
459
|
+
<a href="#read-instance_method" title="#read (instance method)">- (Object) <strong>read</strong>(stringio_or_string, filetype) </a>
|
460
|
+
|
461
|
+
|
462
|
+
|
463
|
+
</span>
|
464
|
+
|
465
|
+
|
466
|
+
|
467
|
+
|
468
|
+
|
469
|
+
|
470
|
+
|
471
|
+
|
472
|
+
|
473
|
+
<span class="summary_desc"><div class='inline'>
|
474
|
+
<p>Load the CSV data contained in the given StringIO or String object.</p>
|
475
|
+
</div></span>
|
476
|
+
|
428
477
|
</li>
|
429
478
|
|
430
479
|
|
@@ -449,6 +498,30 @@ default is a new sheet).</p>
|
|
449
498
|
<p>Sheet returns the first sheet of a workbook, or an empty one.</p>
|
450
499
|
</div></span>
|
451
500
|
|
501
|
+
</li>
|
502
|
+
|
503
|
+
|
504
|
+
<li class="public ">
|
505
|
+
<span class="summary_signature">
|
506
|
+
|
507
|
+
<a href="#text_to_utf8-instance_method" title="#text_to_utf8 (instance method)">- (Object) <strong>text_to_utf8</strong>(text) </a>
|
508
|
+
|
509
|
+
|
510
|
+
|
511
|
+
</span>
|
512
|
+
|
513
|
+
|
514
|
+
|
515
|
+
|
516
|
+
|
517
|
+
|
518
|
+
|
519
|
+
|
520
|
+
|
521
|
+
<span class="summary_desc"><div class='inline'>
|
522
|
+
<p>Helper method to convert text in a file to UTF-8.</p>
|
523
|
+
</div></span>
|
524
|
+
|
452
525
|
</li>
|
453
526
|
|
454
527
|
|
@@ -476,7 +549,7 @@ default is a new sheet).</p>
|
|
476
549
|
|
477
550
|
|
478
551
|
<h3 class="inherited">Methods included from <span class='object_link'><a href="Readers/CsvReader.html" title="Workbook::Readers::CsvReader (module)">Readers::CsvReader</a></span></h3>
|
479
|
-
<p class="inherited"><span class='object_link'><a href="Readers/CsvReader.html#load_csv-instance_method" title="Workbook::Readers::CsvReader#load_csv (method)">#load_csv</a></span>, <span class='object_link'><a href="Readers/CsvReader.html#parse_csv-instance_method" title="Workbook::Readers::CsvReader#parse_csv (method)">#parse_csv</a></span></p>
|
552
|
+
<p class="inherited"><span class='object_link'><a href="Readers/CsvReader.html#csv_lib-instance_method" title="Workbook::Readers::CsvReader#csv_lib (method)">#csv_lib</a></span>, <span class='object_link'><a href="Readers/CsvReader.html#load_csv-instance_method" title="Workbook::Readers::CsvReader#load_csv (method)">#load_csv</a></span>, <span class='object_link'><a href="Readers/CsvReader.html#parse_csv-instance_method" title="Workbook::Readers::CsvReader#parse_csv (method)">#parse_csv</a></span></p>
|
480
553
|
|
481
554
|
|
482
555
|
|
@@ -487,7 +560,18 @@ default is a new sheet).</p>
|
|
487
560
|
|
488
561
|
|
489
562
|
<h3 class="inherited">Methods included from <span class='object_link'><a href="Readers/XlsxReader.html" title="Workbook::Readers::XlsxReader (module)">Readers::XlsxReader</a></span></h3>
|
490
|
-
<p class="inherited"><span class='object_link'><a href="Readers/XlsxReader.html#load_xlsx-instance_method" title="Workbook::Readers::XlsxReader#load_xlsx (method)">#load_xlsx</a></span>, <span class='object_link'><a href="Readers/XlsxReader.html#
|
563
|
+
<p class="inherited"><span class='object_link'><a href="Readers/XlsxReader.html#load_xlsx-instance_method" title="Workbook::Readers::XlsxReader#load_xlsx (method)">#load_xlsx</a></span>, <span class='object_link'><a href="Readers/XlsxReader.html#parse_xlsx-instance_method" title="Workbook::Readers::XlsxReader#parse_xlsx (method)">#parse_xlsx</a></span></p>
|
564
|
+
|
565
|
+
|
566
|
+
|
567
|
+
|
568
|
+
|
569
|
+
|
570
|
+
|
571
|
+
|
572
|
+
|
573
|
+
<h3 class="inherited">Methods included from <span class='object_link'><a href="Readers/OdsReader.html" title="Workbook::Readers::OdsReader (module)">Readers::OdsReader</a></span></h3>
|
574
|
+
<p class="inherited"><span class='object_link'><a href="Readers/OdsReader.html#load_ods-instance_method" title="Workbook::Readers::OdsReader#load_ods (method)">#load_ods</a></span>, <span class='object_link'><a href="Readers/OdsReader.html#parse_ods-instance_method" title="Workbook::Readers::OdsReader#parse_ods (method)">#parse_ods</a></span>, <span class='object_link'><a href="Readers/OdsReader.html#parse_ods_style-instance_method" title="Workbook::Readers::OdsReader#parse_ods_style (method)">#parse_ods_style</a></span>, <span class='object_link'><a href="Readers/OdsReader.html#set_format_property-instance_method" title="Workbook::Readers::OdsReader#set_format_property (method)">#set_format_property</a></span></p>
|
491
575
|
|
492
576
|
|
493
577
|
|
@@ -498,7 +582,18 @@ default is a new sheet).</p>
|
|
498
582
|
|
499
583
|
|
500
584
|
<h3 class="inherited">Methods included from <span class='object_link'><a href="Readers/XlsReader.html" title="Workbook::Readers::XlsReader (module)">Readers::XlsReader</a></span></h3>
|
501
|
-
<p class="inherited"><span class='object_link'><a href="Readers/XlsReader.html#load_xls-instance_method" title="Workbook::Readers::XlsReader#load_xls (method)">#load_xls</a></span>, <span class='object_link'><a href="Readers/XlsReader.html#
|
585
|
+
<p class="inherited"><span class='object_link'><a href="Readers/XlsReader.html#load_xls-instance_method" title="Workbook::Readers::XlsReader#load_xls (method)">#load_xls</a></span>, <span class='object_link'><a href="Readers/XlsReader.html#parse_xls-instance_method" title="Workbook::Readers::XlsReader#parse_xls (method)">#parse_xls</a></span></p>
|
586
|
+
|
587
|
+
|
588
|
+
|
589
|
+
|
590
|
+
|
591
|
+
|
592
|
+
|
593
|
+
|
594
|
+
|
595
|
+
<h3 class="inherited">Methods included from <span class='object_link'><a href="Writers/HtmlWriter.html" title="Workbook::Writers::HtmlWriter (module)">Writers::HtmlWriter</a></span></h3>
|
596
|
+
<p class="inherited"><span class='object_link'><a href="Writers/HtmlWriter.html#to_html-instance_method" title="Workbook::Writers::HtmlWriter#to_html (method)">#to_html</a></span>, <span class='object_link'><a href="Writers/HtmlWriter.html#write_to_html-instance_method" title="Workbook::Writers::HtmlWriter#write_to_html (method)">#write_to_html</a></span></p>
|
502
597
|
|
503
598
|
|
504
599
|
|
@@ -567,25 +662,24 @@ based on the array</p>
|
|
567
662
|
<pre class="lines">
|
568
663
|
|
569
664
|
|
570
|
-
26
|
571
|
-
27
|
572
|
-
28
|
573
|
-
29
|
574
665
|
30
|
575
666
|
31
|
576
|
-
32
|
667
|
+
32
|
668
|
+
33
|
669
|
+
34
|
670
|
+
35
|
671
|
+
36</pre>
|
577
672
|
</td>
|
578
673
|
<td>
|
579
|
-
<pre class="code"><span class="info file"># File 'lib/workbook/book.rb', line
|
580
|
-
|
581
|
-
<span class='
|
582
|
-
<span class='
|
583
|
-
<span class='
|
584
|
-
<span class='
|
585
|
-
<span class='
|
586
|
-
<span class='
|
587
|
-
<span class='
|
588
|
-
</pre>
|
674
|
+
<pre class="code"><span class="info file"># File 'lib/workbook/book.rb', line 30</span>
|
675
|
+
|
676
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span> <span class='id identifier rubyid_sheet'>sheet</span><span class='op'>=</span><span class='const'>Workbook</span><span class='op'>::</span><span class='const'>Sheet</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='lbracket'>[</span><span class='rbracket'>]</span><span class='comma'>,</span> <span class='kw'>self</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span><span class='op'>=</span><span class='lbrace'>{</span><span class='rbrace'>}</span><span class='rparen'>)</span>
|
677
|
+
<span class='kw'>if</span> <span class='id identifier rubyid_sheet'>sheet</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span> <span class='const'>Workbook</span><span class='op'>::</span><span class='const'>Sheet</span>
|
678
|
+
<span class='id identifier rubyid_push'>push</span> <span class='id identifier rubyid_sheet'>sheet</span>
|
679
|
+
<span class='kw'>else</span>
|
680
|
+
<span class='id identifier rubyid_push'>push</span> <span class='const'>Workbook</span><span class='op'>::</span><span class='const'>Sheet</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_sheet'>sheet</span><span class='comma'>,</span> <span class='kw'>self</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span>
|
681
|
+
<span class='kw'>end</span>
|
682
|
+
<span class='kw'>end</span></pre>
|
589
683
|
</td>
|
590
684
|
</tr>
|
591
685
|
</table>
|
@@ -642,17 +736,16 @@ based on the array</p>
|
|
642
736
|
<pre class="lines">
|
643
737
|
|
644
738
|
|
645
|
-
|
646
|
-
|
647
|
-
|
739
|
+
39
|
740
|
+
40
|
741
|
+
41</pre>
|
648
742
|
</td>
|
649
743
|
<td>
|
650
|
-
<pre class="code"><span class="info file"># File 'lib/workbook/book.rb', line
|
744
|
+
<pre class="code"><span class="info file"># File 'lib/workbook/book.rb', line 39</span>
|
651
745
|
|
652
|
-
<span class='
|
653
|
-
<span class='
|
654
|
-
<span class='
|
655
|
-
</pre>
|
746
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_template'>template</span>
|
747
|
+
<span class='ivar'>@template</span>
|
748
|
+
<span class='kw'>end</span></pre>
|
656
749
|
</td>
|
657
750
|
</tr>
|
658
751
|
</table>
|
@@ -704,17 +797,16 @@ based on the array</p>
|
|
704
797
|
<pre class="lines">
|
705
798
|
|
706
799
|
|
707
|
-
|
708
|
-
|
709
|
-
|
800
|
+
52
|
801
|
+
53
|
802
|
+
54</pre>
|
710
803
|
</td>
|
711
804
|
<td>
|
712
|
-
<pre class="code"><span class="info file"># File 'lib/workbook/book.rb', line
|
805
|
+
<pre class="code"><span class="info file"># File 'lib/workbook/book.rb', line 52</span>
|
713
806
|
|
714
|
-
<span class='
|
715
|
-
<span class='
|
716
|
-
<span class='
|
717
|
-
</pre>
|
807
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_title'>title</span>
|
808
|
+
<span class='ivar'>@title</span>
|
809
|
+
<span class='kw'>end</span></pre>
|
718
810
|
</td>
|
719
811
|
</tr>
|
720
812
|
</table>
|
@@ -810,21 +902,120 @@ of the file, this option allows you to override the default.</p>
|
|
810
902
|
<pre class="lines">
|
811
903
|
|
812
904
|
|
813
|
-
|
814
|
-
|
815
|
-
|
816
|
-
|
817
|
-
|
905
|
+
150
|
906
|
+
151
|
907
|
+
152
|
908
|
+
153
|
909
|
+
154</pre>
|
910
|
+
</td>
|
911
|
+
<td>
|
912
|
+
<pre class="code"><span class="info file"># File 'lib/workbook/book.rb', line 150</span>
|
913
|
+
|
914
|
+
<span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_open'>open</span> <span class='id identifier rubyid_filename'>filename</span><span class='comma'>,</span> <span class='id identifier rubyid_extension'>extension</span><span class='op'>=</span><span class='kw'>nil</span>
|
915
|
+
<span class='id identifier rubyid_wb'>wb</span> <span class='op'>=</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span>
|
916
|
+
<span class='id identifier rubyid_wb'>wb</span><span class='period'>.</span><span class='id identifier rubyid_open'>open</span> <span class='id identifier rubyid_filename'>filename</span><span class='comma'>,</span> <span class='id identifier rubyid_extension'>extension</span>
|
917
|
+
<span class='kw'>return</span> <span class='id identifier rubyid_wb'>wb</span>
|
918
|
+
<span class='kw'>end</span></pre>
|
919
|
+
</td>
|
920
|
+
</tr>
|
921
|
+
</table>
|
922
|
+
</div>
|
923
|
+
|
924
|
+
<div class="method_details ">
|
925
|
+
<h3 class="signature " id="read-class_method">
|
926
|
+
|
927
|
+
+ (<tt><span class='object_link'><a href="" title="Workbook::Book (class)">Workbook::Book</a></span></tt>) <strong>read</strong>(stringio_or_string, filetype)
|
928
|
+
|
929
|
+
|
930
|
+
|
931
|
+
|
932
|
+
|
933
|
+
</h3><div class="docstring">
|
934
|
+
<div class="discussion">
|
935
|
+
|
936
|
+
<p>Create an instance from the given stream or string, which should be in CSV
|
937
|
+
or TXT format</p>
|
938
|
+
|
939
|
+
|
940
|
+
</div>
|
941
|
+
</div>
|
942
|
+
<div class="tags">
|
943
|
+
<p class="tag_title">Parameters:</p>
|
944
|
+
<ul class="param">
|
945
|
+
|
946
|
+
<li>
|
947
|
+
|
948
|
+
<span class='name'>stringio_or_string</span>
|
949
|
+
|
950
|
+
|
951
|
+
<span class='type'>(<tt>StringIO</tt>)</span>
|
952
|
+
|
953
|
+
|
954
|
+
|
955
|
+
—
|
956
|
+
<div class='inline'>
|
957
|
+
<p>StringIO stream or String object, with data in CSV or TXT format</p>
|
958
|
+
</div>
|
959
|
+
|
960
|
+
</li>
|
961
|
+
|
962
|
+
<li>
|
963
|
+
|
964
|
+
<span class='name'>filetype</span>
|
965
|
+
|
966
|
+
|
967
|
+
<span class='type'>(<tt>Symbol</tt>)</span>
|
968
|
+
|
969
|
+
|
970
|
+
|
971
|
+
—
|
972
|
+
<div class='inline'>
|
973
|
+
<p>(currently only :csv or :txt), indicating the format of the first parameter</p>
|
974
|
+
</div>
|
975
|
+
|
976
|
+
</li>
|
977
|
+
|
978
|
+
</ul>
|
979
|
+
|
980
|
+
<p class="tag_title">Returns:</p>
|
981
|
+
<ul class="return">
|
982
|
+
|
983
|
+
<li>
|
984
|
+
|
985
|
+
|
986
|
+
<span class='type'>(<tt><span class='object_link'><a href="" title="Workbook::Book (class)">Workbook::Book</a></span></tt>)</span>
|
987
|
+
|
988
|
+
|
989
|
+
|
990
|
+
—
|
991
|
+
<div class='inline'>
|
992
|
+
<p>A new instance</p>
|
993
|
+
</div>
|
994
|
+
|
995
|
+
</li>
|
996
|
+
|
997
|
+
</ul>
|
998
|
+
|
999
|
+
</div><table class="source_code">
|
1000
|
+
<tr>
|
1001
|
+
<td>
|
1002
|
+
<pre class="lines">
|
1003
|
+
|
1004
|
+
|
1005
|
+
161
|
1006
|
+
162
|
1007
|
+
163
|
1008
|
+
164
|
1009
|
+
165</pre>
|
818
1010
|
</td>
|
819
1011
|
<td>
|
820
|
-
<pre class="code"><span class="info file"># File 'lib/workbook/book.rb', line
|
821
|
-
|
822
|
-
<span class='
|
823
|
-
<span class='
|
824
|
-
<span class='
|
825
|
-
<span class='
|
826
|
-
<span class='
|
827
|
-
</pre>
|
1012
|
+
<pre class="code"><span class="info file"># File 'lib/workbook/book.rb', line 161</span>
|
1013
|
+
|
1014
|
+
<span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_read'>read</span><span class='lparen'>(</span><span class='id identifier rubyid_stringio_or_string'>stringio_or_string</span><span class='comma'>,</span> <span class='id identifier rubyid_filetype'>filetype</span><span class='rparen'>)</span>
|
1015
|
+
<span class='id identifier rubyid_wb'>wb</span> <span class='op'>=</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span>
|
1016
|
+
<span class='id identifier rubyid_wb'>wb</span><span class='period'>.</span><span class='id identifier rubyid_read'>read</span><span class='lparen'>(</span><span class='id identifier rubyid_stringio_or_string'>stringio_or_string</span><span class='comma'>,</span> <span class='id identifier rubyid_filetype'>filetype</span><span class='rparen'>)</span>
|
1017
|
+
<span class='id identifier rubyid_wb'>wb</span>
|
1018
|
+
<span class='kw'>end</span></pre>
|
828
1019
|
</td>
|
829
1020
|
</tr>
|
830
1021
|
</table>
|
@@ -882,23 +1073,22 @@ of the file, this option allows you to override the default.</p>
|
|
882
1073
|
<pre class="lines">
|
883
1074
|
|
884
1075
|
|
885
|
-
|
886
|
-
|
887
|
-
|
888
|
-
|
889
|
-
|
890
|
-
|
1076
|
+
181
|
1077
|
+
182
|
1078
|
+
183
|
1079
|
+
184
|
1080
|
+
185
|
1081
|
+
186</pre>
|
891
1082
|
</td>
|
892
1083
|
<td>
|
893
|
-
<pre class="code"><span class="info file"># File 'lib/workbook/book.rb', line
|
894
|
-
|
895
|
-
<span class='
|
896
|
-
<span class='
|
897
|
-
<span class='
|
898
|
-
<span class='
|
899
|
-
<span class='
|
900
|
-
<span class='
|
901
|
-
</pre>
|
1084
|
+
<pre class="code"><span class="info file"># File 'lib/workbook/book.rb', line 181</span>
|
1085
|
+
|
1086
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_create_or_open_sheet_at'>create_or_open_sheet_at</span> <span class='id identifier rubyid_index'>index</span>
|
1087
|
+
<span class='id identifier rubyid_s'>s</span> <span class='op'>=</span> <span class='kw'>self</span><span class='lbracket'>[</span><span class='id identifier rubyid_index'>index</span><span class='rbracket'>]</span>
|
1088
|
+
<span class='id identifier rubyid_s'>s</span> <span class='op'>=</span> <span class='kw'>self</span><span class='lbracket'>[</span><span class='id identifier rubyid_index'>index</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='const'>Workbook</span><span class='op'>::</span><span class='const'>Sheet</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span> <span class='kw'>if</span> <span class='id identifier rubyid_s'>s</span> <span class='op'>==</span> <span class='kw'>nil</span>
|
1089
|
+
<span class='id identifier rubyid_s'>s</span><span class='period'>.</span><span class='id identifier rubyid_book'>book</span> <span class='op'>=</span> <span class='kw'>self</span>
|
1090
|
+
<span class='id identifier rubyid_s'>s</span>
|
1091
|
+
<span class='kw'>end</span></pre>
|
902
1092
|
</td>
|
903
1093
|
</tr>
|
904
1094
|
</table>
|
@@ -968,17 +1158,16 @@ of the file, this option allows you to override the default.</p>
|
|
968
1158
|
<pre class="lines">
|
969
1159
|
|
970
1160
|
|
971
|
-
|
972
|
-
|
973
|
-
|
1161
|
+
141
|
1162
|
+
142
|
1163
|
+
143</pre>
|
974
1164
|
</td>
|
975
1165
|
<td>
|
976
|
-
<pre class="code"><span class="info file"># File 'lib/workbook/book.rb', line
|
1166
|
+
<pre class="code"><span class="info file"># File 'lib/workbook/book.rb', line 141</span>
|
977
1167
|
|
978
|
-
<span class='
|
979
|
-
<span class='
|
980
|
-
<span class='
|
981
|
-
</pre>
|
1168
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_file_extension'>file_extension</span><span class='lparen'>(</span><span class='id identifier rubyid_filename'>filename</span><span class='rparen'>)</span>
|
1169
|
+
<span class='const'>File</span><span class='period'>.</span><span class='id identifier rubyid_extname'>extname</span><span class='lparen'>(</span><span class='id identifier rubyid_filename'>filename</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_gsub'>gsub</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>.</span><span class='tstring_end'>'</span></span><span class='comma'>,</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_downcase'>downcase</span> <span class='kw'>if</span> <span class='id identifier rubyid_filename'>filename</span>
|
1170
|
+
<span class='kw'>end</span></pre>
|
982
1171
|
</td>
|
983
1172
|
</tr>
|
984
1173
|
</table>
|
@@ -1028,17 +1217,16 @@ of the file, this option allows you to override the default.</p>
|
|
1028
1217
|
<pre class="lines">
|
1029
1218
|
|
1030
1219
|
|
1031
|
-
|
1032
|
-
|
1033
|
-
|
1220
|
+
74
|
1221
|
+
75
|
1222
|
+
76</pre>
|
1034
1223
|
</td>
|
1035
1224
|
<td>
|
1036
|
-
<pre class="code"><span class="info file"># File 'lib/workbook/book.rb', line
|
1225
|
+
<pre class="code"><span class="info file"># File 'lib/workbook/book.rb', line 74</span>
|
1037
1226
|
|
1038
|
-
<span class='
|
1039
|
-
<span class='
|
1040
|
-
<span class='
|
1041
|
-
</pre>
|
1227
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_has_contents?'>has_contents?</span>
|
1228
|
+
<span class='id identifier rubyid_sheet'>sheet</span><span class='period'>.</span><span class='id identifier rubyid_has_contents?'>has_contents?</span>
|
1229
|
+
<span class='kw'>end</span></pre>
|
1042
1230
|
</td>
|
1043
1231
|
</tr>
|
1044
1232
|
</table>
|
@@ -1127,27 +1315,26 @@ e.g. ‘txt’, ‘csv’ or ‘xls’)</p>
|
|
1127
1315
|
<pre class="lines">
|
1128
1316
|
|
1129
1317
|
|
1130
|
-
79
|
1131
|
-
80
|
1132
|
-
81
|
1133
|
-
82
|
1134
1318
|
83
|
1135
1319
|
84
|
1136
1320
|
85
|
1137
|
-
86
|
1321
|
+
86
|
1322
|
+
87
|
1323
|
+
88
|
1324
|
+
89
|
1325
|
+
90</pre>
|
1138
1326
|
</td>
|
1139
1327
|
<td>
|
1140
|
-
<pre class="code"><span class="info file"># File 'lib/workbook/book.rb', line
|
1141
|
-
|
1142
|
-
<span class='
|
1143
|
-
<span class='
|
1144
|
-
<span class='
|
1145
|
-
<span class='
|
1146
|
-
<span class='
|
1147
|
-
<span class='
|
1148
|
-
<span class='
|
1149
|
-
<span class='
|
1150
|
-
</pre>
|
1328
|
+
<pre class="code"><span class="info file"># File 'lib/workbook/book.rb', line 83</span>
|
1329
|
+
|
1330
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_open'>open</span> <span class='id identifier rubyid_filename'>filename</span><span class='comma'>,</span> <span class='id identifier rubyid_extension'>extension</span><span class='op'>=</span><span class='kw'>nil</span>
|
1331
|
+
<span class='id identifier rubyid_extension'>extension</span> <span class='op'>=</span> <span class='id identifier rubyid_file_extension'>file_extension</span><span class='lparen'>(</span><span class='id identifier rubyid_filename'>filename</span><span class='rparen'>)</span> <span class='kw'>unless</span> <span class='id identifier rubyid_extension'>extension</span>
|
1332
|
+
<span class='kw'>if</span> <span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>txt</span><span class='tstring_end'>'</span></span><span class='comma'>,</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>csv</span><span class='tstring_end'>'</span></span><span class='comma'>,</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>xml</span><span class='tstring_end'>'</span></span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_include?'>include?</span><span class='lparen'>(</span><span class='id identifier rubyid_extension'>extension</span><span class='rparen'>)</span>
|
1333
|
+
<span class='id identifier rubyid_open_text'>open_text</span> <span class='id identifier rubyid_filename'>filename</span><span class='comma'>,</span> <span class='id identifier rubyid_extension'>extension</span>
|
1334
|
+
<span class='kw'>else</span>
|
1335
|
+
<span class='id identifier rubyid_open_binary'>open_binary</span> <span class='id identifier rubyid_filename'>filename</span><span class='comma'>,</span> <span class='id identifier rubyid_extension'>extension</span>
|
1336
|
+
<span class='kw'>end</span>
|
1337
|
+
<span class='kw'>end</span></pre>
|
1151
1338
|
</td>
|
1152
1339
|
</tr>
|
1153
1340
|
</table>
|
@@ -1237,21 +1424,20 @@ e.g. ‘txt’, ‘csv’ or ‘xls’)</p>
|
|
1237
1424
|
<pre class="lines">
|
1238
1425
|
|
1239
1426
|
|
1240
|
-
|
1241
|
-
|
1242
|
-
|
1243
|
-
|
1244
|
-
|
1427
|
+
97
|
1428
|
+
98
|
1429
|
+
99
|
1430
|
+
100
|
1431
|
+
101</pre>
|
1245
1432
|
</td>
|
1246
1433
|
<td>
|
1247
|
-
<pre class="code"><span class="info file"># File 'lib/workbook/book.rb', line
|
1248
|
-
|
1249
|
-
<span class='
|
1250
|
-
<span class='
|
1251
|
-
<span class='
|
1252
|
-
<span class='
|
1253
|
-
<span class='
|
1254
|
-
</pre>
|
1434
|
+
<pre class="code"><span class="info file"># File 'lib/workbook/book.rb', line 97</span>
|
1435
|
+
|
1436
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_open_binary'>open_binary</span> <span class='id identifier rubyid_filename'>filename</span><span class='comma'>,</span> <span class='id identifier rubyid_extension'>extension</span><span class='op'>=</span><span class='kw'>nil</span>
|
1437
|
+
<span class='id identifier rubyid_extension'>extension</span> <span class='op'>=</span> <span class='id identifier rubyid_file_extension'>file_extension</span><span class='lparen'>(</span><span class='id identifier rubyid_filename'>filename</span><span class='rparen'>)</span> <span class='kw'>unless</span> <span class='id identifier rubyid_extension'>extension</span>
|
1438
|
+
<span class='id identifier rubyid_f'>f</span> <span class='op'>=</span> <span class='const'>File</span><span class='period'>.</span><span class='id identifier rubyid_open'>open</span><span class='lparen'>(</span><span class='id identifier rubyid_filename'>filename</span><span class='comma'>,</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>rb</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span>
|
1439
|
+
<span class='id identifier rubyid_send'>send</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>load_</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_extension'>extension</span><span class='rbrace'>}</span><span class='tstring_end'>"</span></span><span class='period'>.</span><span class='id identifier rubyid_to_sym'>to_sym</span><span class='comma'>,</span><span class='id identifier rubyid_f'>f</span><span class='rparen'>)</span>
|
1440
|
+
<span class='kw'>end</span></pre>
|
1255
1441
|
</td>
|
1256
1442
|
</tr>
|
1257
1443
|
</table>
|
@@ -1322,27 +1508,24 @@ e.g. ‘txt’, ‘csv’ or ‘xls’)</p>
|
|
1322
1508
|
<pre class="lines">
|
1323
1509
|
|
1324
1510
|
|
1325
|
-
103
|
1326
|
-
104
|
1327
|
-
105
|
1328
|
-
106
|
1329
1511
|
107
|
1330
1512
|
108
|
1331
1513
|
109
|
1332
|
-
110
|
1514
|
+
110
|
1515
|
+
111
|
1516
|
+
112
|
1517
|
+
113</pre>
|
1333
1518
|
</td>
|
1334
1519
|
<td>
|
1335
|
-
<pre class="code"><span class="info file"># File 'lib/workbook/book.rb', line
|
1336
|
-
|
1337
|
-
<span class='
|
1338
|
-
<span class='
|
1339
|
-
<span class='
|
1340
|
-
<span class='
|
1341
|
-
<span class='
|
1342
|
-
<span class='
|
1343
|
-
|
1344
|
-
<span class='rubyid_end end kw'>end</span>
|
1345
|
-
</pre>
|
1520
|
+
<pre class="code"><span class="info file"># File 'lib/workbook/book.rb', line 107</span>
|
1521
|
+
|
1522
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_open_text'>open_text</span> <span class='id identifier rubyid_filename'>filename</span><span class='comma'>,</span> <span class='id identifier rubyid_extension'>extension</span><span class='op'>=</span><span class='kw'>nil</span>
|
1523
|
+
<span class='id identifier rubyid_extension'>extension</span> <span class='op'>=</span> <span class='id identifier rubyid_file_extension'>file_extension</span><span class='lparen'>(</span><span class='id identifier rubyid_filename'>filename</span><span class='rparen'>)</span> <span class='kw'>unless</span> <span class='id identifier rubyid_extension'>extension</span>
|
1524
|
+
<span class='id identifier rubyid_f'>f</span> <span class='op'>=</span> <span class='const'>File</span><span class='period'>.</span><span class='id identifier rubyid_open'>open</span><span class='lparen'>(</span><span class='id identifier rubyid_filename'>filename</span><span class='comma'>,</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>r</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span>
|
1525
|
+
<span class='id identifier rubyid_t'>t</span> <span class='op'>=</span> <span class='id identifier rubyid_f'>f</span><span class='period'>.</span><span class='id identifier rubyid_read'>read</span>
|
1526
|
+
<span class='id identifier rubyid_t'>t</span> <span class='op'>=</span> <span class='id identifier rubyid_text_to_utf8'>text_to_utf8</span><span class='lparen'>(</span><span class='id identifier rubyid_t'>t</span><span class='rparen'>)</span>
|
1527
|
+
<span class='id identifier rubyid_send'>send</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>load_</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_extension'>extension</span><span class='rbrace'>}</span><span class='tstring_end'>"</span></span><span class='period'>.</span><span class='id identifier rubyid_to_sym'>to_sym</span><span class='comma'>,</span><span class='id identifier rubyid_t'>t</span><span class='rparen'>)</span>
|
1528
|
+
<span class='kw'>end</span></pre>
|
1346
1529
|
</td>
|
1347
1530
|
</tr>
|
1348
1531
|
</table>
|
@@ -1392,17 +1575,112 @@ default is a new sheet)</p>
|
|
1392
1575
|
<pre class="lines">
|
1393
1576
|
|
1394
1577
|
|
1395
|
-
|
1396
|
-
|
1397
|
-
|
1578
|
+
59
|
1579
|
+
60
|
1580
|
+
61</pre>
|
1398
1581
|
</td>
|
1399
1582
|
<td>
|
1400
|
-
<pre class="code"><span class="info file"># File 'lib/workbook/book.rb', line
|
1583
|
+
<pre class="code"><span class="info file"># File 'lib/workbook/book.rb', line 59</span>
|
1401
1584
|
|
1402
|
-
<span class='
|
1403
|
-
<span class='
|
1404
|
-
<span class='
|
1405
|
-
</
|
1585
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_push'>push</span> <span class='id identifier rubyid_sheet'>sheet</span><span class='op'>=</span><span class='const'>Workbook</span><span class='op'>::</span><span class='const'>Sheet</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span>
|
1586
|
+
<span class='kw'>super</span><span class='lparen'>(</span><span class='id identifier rubyid_sheet'>sheet</span><span class='rparen'>)</span>
|
1587
|
+
<span class='kw'>end</span></pre>
|
1588
|
+
</td>
|
1589
|
+
</tr>
|
1590
|
+
</table>
|
1591
|
+
</div>
|
1592
|
+
|
1593
|
+
<div class="method_details ">
|
1594
|
+
<h3 class="signature " id="read-instance_method">
|
1595
|
+
|
1596
|
+
- (<tt>Object</tt>) <strong>read</strong>(stringio_or_string, filetype)
|
1597
|
+
|
1598
|
+
|
1599
|
+
|
1600
|
+
|
1601
|
+
|
1602
|
+
</h3><div class="docstring">
|
1603
|
+
<div class="discussion">
|
1604
|
+
|
1605
|
+
<p>Load the CSV data contained in the given StringIO or String object</p>
|
1606
|
+
|
1607
|
+
|
1608
|
+
</div>
|
1609
|
+
</div>
|
1610
|
+
<div class="tags">
|
1611
|
+
<p class="tag_title">Parameters:</p>
|
1612
|
+
<ul class="param">
|
1613
|
+
|
1614
|
+
<li>
|
1615
|
+
|
1616
|
+
<span class='name'>stringio_or_string</span>
|
1617
|
+
|
1618
|
+
|
1619
|
+
<span class='type'>(<tt>StringIO</tt>)</span>
|
1620
|
+
|
1621
|
+
|
1622
|
+
|
1623
|
+
—
|
1624
|
+
<div class='inline'>
|
1625
|
+
<p>StringIO stream or String object, with data in CSV format</p>
|
1626
|
+
</div>
|
1627
|
+
|
1628
|
+
</li>
|
1629
|
+
|
1630
|
+
<li>
|
1631
|
+
|
1632
|
+
<span class='name'>filetype</span>
|
1633
|
+
|
1634
|
+
|
1635
|
+
<span class='type'>(<tt>Symbol</tt>)</span>
|
1636
|
+
|
1637
|
+
|
1638
|
+
|
1639
|
+
—
|
1640
|
+
<div class='inline'>
|
1641
|
+
<p>(currently only :csv or :txt), indicating the format of the first parameter</p>
|
1642
|
+
</div>
|
1643
|
+
|
1644
|
+
</li>
|
1645
|
+
|
1646
|
+
</ul>
|
1647
|
+
|
1648
|
+
<p class="tag_title">Raises:</p>
|
1649
|
+
<ul class="raise">
|
1650
|
+
|
1651
|
+
<li>
|
1652
|
+
|
1653
|
+
|
1654
|
+
<span class='type'>(<tt>ArgumentError</tt>)</span>
|
1655
|
+
|
1656
|
+
|
1657
|
+
|
1658
|
+
</li>
|
1659
|
+
|
1660
|
+
</ul>
|
1661
|
+
|
1662
|
+
</div><table class="source_code">
|
1663
|
+
<tr>
|
1664
|
+
<td>
|
1665
|
+
<pre class="lines">
|
1666
|
+
|
1667
|
+
|
1668
|
+
171
|
1669
|
+
172
|
1670
|
+
173
|
1671
|
+
174
|
1672
|
+
175
|
1673
|
+
176</pre>
|
1674
|
+
</td>
|
1675
|
+
<td>
|
1676
|
+
<pre class="code"><span class="info file"># File 'lib/workbook/book.rb', line 171</span>
|
1677
|
+
|
1678
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_read'>read</span><span class='lparen'>(</span><span class='id identifier rubyid_stringio_or_string'>stringio_or_string</span><span class='comma'>,</span> <span class='id identifier rubyid_filetype'>filetype</span><span class='rparen'>)</span>
|
1679
|
+
<span class='id identifier rubyid_raise'>raise</span> <span class='const'>ArgumentError</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>The filetype parameter should be either :csv or :txt</span><span class='tstring_end'>"</span></span><span class='rparen'>)</span> <span class='kw'>unless</span> <span class='lbracket'>[</span><span class='symbol'>:csv</span><span class='comma'>,</span> <span class='symbol'>:txt</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_include?'>include?</span><span class='lparen'>(</span><span class='id identifier rubyid_filetype'>filetype</span><span class='rparen'>)</span>
|
1680
|
+
<span class='id identifier rubyid_t'>t</span> <span class='op'>=</span> <span class='id identifier rubyid_stringio_or_string'>stringio_or_string</span><span class='period'>.</span><span class='id identifier rubyid_respond_to?'>respond_to?</span><span class='lparen'>(</span><span class='symbol'>:read</span><span class='rparen'>)</span> <span class='op'>?</span> <span class='id identifier rubyid_stringio_or_string'>stringio_or_string</span><span class='period'>.</span><span class='id identifier rubyid_read'>read</span> <span class='op'>:</span> <span class='id identifier rubyid_stringio_or_string'>stringio_or_string</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span>
|
1681
|
+
<span class='id identifier rubyid_t'>t</span> <span class='op'>=</span> <span class='id identifier rubyid_text_to_utf8'>text_to_utf8</span><span class='lparen'>(</span><span class='id identifier rubyid_t'>t</span><span class='rparen'>)</span>
|
1682
|
+
<span class='id identifier rubyid_send'>send</span><span class='lparen'>(</span><span class='symbol'>:parse_</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_filetype'>filetype</span><span class='rbrace'>}</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='id identifier rubyid_t'>t</span><span class='rparen'>)</span>
|
1683
|
+
<span class='kw'>end</span></pre>
|
1406
1684
|
</td>
|
1407
1685
|
</tr>
|
1408
1686
|
</table>
|
@@ -1452,19 +1730,109 @@ default is a new sheet)</p>
|
|
1452
1730
|
<pre class="lines">
|
1453
1731
|
|
1454
1732
|
|
1455
|
-
|
1456
|
-
|
1457
|
-
|
1458
|
-
|
1733
|
+
66
|
1734
|
+
67
|
1735
|
+
68
|
1736
|
+
69</pre>
|
1459
1737
|
</td>
|
1460
1738
|
<td>
|
1461
|
-
<pre class="code"><span class="info file"># File 'lib/workbook/book.rb', line
|
1739
|
+
<pre class="code"><span class="info file"># File 'lib/workbook/book.rb', line 66</span>
|
1740
|
+
|
1741
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_sheet'>sheet</span>
|
1742
|
+
<span class='id identifier rubyid_push'>push</span> <span class='const'>Workbook</span><span class='op'>::</span><span class='const'>Sheet</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span> <span class='kw'>unless</span> <span class='id identifier rubyid_first'>first</span>
|
1743
|
+
<span class='id identifier rubyid_first'>first</span>
|
1744
|
+
<span class='kw'>end</span></pre>
|
1745
|
+
</td>
|
1746
|
+
</tr>
|
1747
|
+
</table>
|
1748
|
+
</div>
|
1749
|
+
|
1750
|
+
<div class="method_details ">
|
1751
|
+
<h3 class="signature " id="text_to_utf8-instance_method">
|
1752
|
+
|
1753
|
+
- (<tt>Object</tt>) <strong>text_to_utf8</strong>(text)
|
1754
|
+
|
1755
|
+
|
1756
|
+
|
1757
|
+
|
1758
|
+
|
1759
|
+
</h3><div class="docstring">
|
1760
|
+
<div class="discussion">
|
1761
|
+
|
1762
|
+
<p>Helper method to convert text in a file to UTF-8</p>
|
1763
|
+
|
1764
|
+
|
1765
|
+
</div>
|
1766
|
+
</div>
|
1767
|
+
<div class="tags">
|
1768
|
+
<p class="tag_title">Parameters:</p>
|
1769
|
+
<ul class="param">
|
1770
|
+
|
1771
|
+
<li>
|
1772
|
+
|
1773
|
+
<span class='name'>text</span>
|
1774
|
+
|
1775
|
+
|
1776
|
+
<span class='type'>(<tt>String</tt>)</span>
|
1777
|
+
|
1778
|
+
|
1779
|
+
|
1780
|
+
—
|
1781
|
+
<div class='inline'>
|
1782
|
+
<p>a string to convert</p>
|
1783
|
+
</div>
|
1784
|
+
|
1785
|
+
</li>
|
1786
|
+
|
1787
|
+
</ul>
|
1788
|
+
|
1789
|
+
|
1790
|
+
</div><table class="source_code">
|
1791
|
+
<tr>
|
1792
|
+
<td>
|
1793
|
+
<pre class="lines">
|
1794
|
+
|
1462
1795
|
|
1463
|
-
|
1464
|
-
|
1465
|
-
|
1466
|
-
|
1467
|
-
|
1796
|
+
119
|
1797
|
+
120
|
1798
|
+
121
|
1799
|
+
122
|
1800
|
+
123
|
1801
|
+
124
|
1802
|
+
125
|
1803
|
+
126
|
1804
|
+
127
|
1805
|
+
128
|
1806
|
+
129
|
1807
|
+
130
|
1808
|
+
131
|
1809
|
+
132
|
1810
|
+
133
|
1811
|
+
134
|
1812
|
+
135
|
1813
|
+
136</pre>
|
1814
|
+
</td>
|
1815
|
+
<td>
|
1816
|
+
<pre class="code"><span class="info file"># File 'lib/workbook/book.rb', line 119</span>
|
1817
|
+
|
1818
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_text_to_utf8'>text_to_utf8</span> <span class='id identifier rubyid_text'>text</span>
|
1819
|
+
<span class='kw'>if</span> <span class='const'>RUBY_VERSION</span> <span class='op'><</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>1.9</span><span class='tstring_end'>'</span></span>
|
1820
|
+
<span class='id identifier rubyid_require'>require</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>rchardet</span><span class='tstring_end'>'</span></span>
|
1821
|
+
<span class='id identifier rubyid_require'>require</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>iconv</span><span class='tstring_end'>'</span></span>
|
1822
|
+
<span class='id identifier rubyid_detected_encoding'>detected_encoding</span> <span class='op'>=</span> <span class='const'>CharDet</span><span class='period'>.</span><span class='id identifier rubyid_detect'>detect</span><span class='lparen'>(</span><span class='id identifier rubyid_text'>text</span><span class='rparen'>)</span>
|
1823
|
+
<span class='id identifier rubyid_detected_encoding'>detected_encoding</span> <span class='op'>=</span> <span class='id identifier rubyid_detected_encoding'>detected_encoding</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>encoding</span><span class='tstring_end'>'</span></span><span class='rbracket'>]</span>
|
1824
|
+
<span class='id identifier rubyid_text'>text</span> <span class='op'>=</span> <span class='const'>Iconv</span><span class='period'>.</span><span class='id identifier rubyid_conv'>conv</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>UTF-8//TRANSLIT//IGNORE</span><span class='tstring_end'>"</span></span><span class='comma'>,</span><span class='id identifier rubyid_detected_encoding'>detected_encoding</span><span class='comma'>,</span><span class='id identifier rubyid_text'>text</span><span class='rparen'>)</span>
|
1825
|
+
<span class='id identifier rubyid_text'>text</span> <span class='op'>=</span> <span class='id identifier rubyid_text'>text</span><span class='period'>.</span><span class='id identifier rubyid_gsub'>gsub</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>\xEF\xBB\xBF</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span> <span class='comment'># removing the BOM...
|
1826
|
+
</span> <span class='kw'>else</span>
|
1827
|
+
<span class='kw'>unless</span> <span class='id identifier rubyid_text'>text</span><span class='period'>.</span><span class='id identifier rubyid_valid_encoding?'>valid_encoding?</span> <span class='kw'>and</span> <span class='id identifier rubyid_text'>text</span><span class='period'>.</span><span class='id identifier rubyid_encoding'>encoding</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>UTF-8</span><span class='tstring_end'>"</span></span>
|
1828
|
+
<span class='comment'># TODO: had some ruby 1.9 problems with rchardet ... but ideally it or a similar functionality will be reintroduced
|
1829
|
+
</span> <span class='id identifier rubyid_source_encoding'>source_encoding</span> <span class='op'>=</span> <span class='id identifier rubyid_text'>text</span><span class='period'>.</span><span class='id identifier rubyid_valid_encoding?'>valid_encoding?</span> <span class='op'>?</span> <span class='id identifier rubyid_text'>text</span><span class='period'>.</span><span class='id identifier rubyid_encoding'>encoding</span> <span class='op'>:</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>US-ASCII</span><span class='tstring_end'>"</span></span>
|
1830
|
+
<span class='id identifier rubyid_text'>text</span> <span class='op'>=</span> <span class='id identifier rubyid_text'>text</span><span class='period'>.</span><span class='id identifier rubyid_encode'>encode</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>UTF-8</span><span class='tstring_end'>'</span></span><span class='comma'>,</span> <span class='id identifier rubyid_source_encoding'>source_encoding</span><span class='comma'>,</span> <span class='lbrace'>{</span><span class='symbol'>:invalid</span><span class='op'>=></span><span class='symbol'>:replace</span><span class='comma'>,</span> <span class='symbol'>:undef</span><span class='op'>=></span><span class='symbol'>:replace</span><span class='comma'>,</span> <span class='symbol'>:replace</span><span class='op'>=></span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_end'>"</span></span><span class='rbrace'>}</span><span class='rparen'>)</span>
|
1831
|
+
<span class='id identifier rubyid_text'>text</span> <span class='op'>=</span> <span class='id identifier rubyid_text'>text</span><span class='period'>.</span><span class='id identifier rubyid_gsub'>gsub</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>\u0000</span><span class='tstring_end'>"</span></span><span class='comma'>,</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_end'>"</span></span><span class='rparen'>)</span> <span class='comment'># TODO: this cleanup of nil values isn't supposed to be needed...
|
1832
|
+
</span> <span class='kw'>end</span>
|
1833
|
+
<span class='kw'>end</span>
|
1834
|
+
<span class='kw'>return</span> <span class='id identifier rubyid_text'>text</span>
|
1835
|
+
<span class='kw'>end</span></pre>
|
1468
1836
|
</td>
|
1469
1837
|
</tr>
|
1470
1838
|
</table>
|
@@ -1475,9 +1843,9 @@ default is a new sheet)</p>
|
|
1475
1843
|
</div>
|
1476
1844
|
|
1477
1845
|
<div id="footer">
|
1478
|
-
Generated on
|
1846
|
+
Generated on Sun May 5 14:58:07 2013 by
|
1479
1847
|
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
1480
|
-
0.8.
|
1848
|
+
0.8.5.2 (ruby-1.9.3).
|
1481
1849
|
</div>
|
1482
1850
|
|
1483
1851
|
</body>
|