1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
|
// =============================================================================
// Copyright (C) 2011 - INRIA - Michael Baudin
// Copyright (C) 2010 - 2011 - INRIA - Allan CORNET
// =============================================================================
// <-- JVM NOT MANDATORY -->
// =============================================================================
A = " 1; 2; 3";
B = " 4; 5; 6";
C = [A;B];
bbSTR = csvTextScan(C, ';', [], "string");
expected = [
" 1" , " 2" , " 3"
" 4" , " 5" , " 6"
];
assert_checkequal ( bbSTR , expected );
// =============================================================================
bbDouble = csvTextScan(C, ';', [], 'double');
expected = [1 2 3;4 5 6];
assert_checkequal ( bbDouble , expected );
// =============================================================================
path = SCI+"/modules/spreadsheet/tests/unit_tests/";
// =============================================================================
Mstr = [
"1" "0" "0" "0" "0"
"0" "1" "0" "0" "0"
"0" "0" "1" "0" "0"
];
//
r = mgetl(fullfile(path,"M_1.csv"));
b = csvTextScan(r, [], [], "string");
assert_checkequal (b,Mstr);
//
r = mgetl(fullfile(path,"M_2.csv"));
b = csvTextScan(r, ascii(9), [], "string");
assert_checkequal (b,Mstr);
//
r = mgetl(fullfile(path,"M_3.csv"));
b = csvTextScan(r, " ", ",", "string");
assert_checkequal (b,Mstr);
//
r = mgetl(fullfile(path,"M_4.csv"));
b = csvTextScan(r, ";", ",", "string");
assert_checkequal (b,Mstr);
// =============================================================================
Nstr = [
"Nan" "1" "Nan"
"-Inf" "Inf" "4"
];
//
r = mgetl(fullfile(path,"N_1.csv"));
b = csvTextScan(r, [], [], "string");
assert_checkequal (b,Nstr);
//
r = mgetl(fullfile(path,"N_2.csv"));
b = csvTextScan(r, ascii(9), [], "string");
assert_checkequal (b,Nstr);
//
r = mgetl(fullfile(path,"N_3.csv"));
b = csvTextScan(r, " ", ",", "string");
assert_checkequal (b,Nstr);
//
r = mgetl(fullfile(path,"N_4.csv"));
b = csvTextScan(r, ";", ",", "string");
assert_checkequal (b,Nstr);
// =============================================================================
Kstr = [
"1.1000000000000001" "0.10000000000000001"
"0.10000000000000001" "1.1000000000000001"
"0.10000000000000001" "0.10000000000000001"
];
Kstr2 = [
"1,1000000000000001" "0,10000000000000001"
"0,10000000000000001" "1,1000000000000001"
"0,10000000000000001" "0,10000000000000001"
];
//
r = mgetl(fullfile(path,"K_1.csv"));
b = csvTextScan(r, [], [], "string");
assert_checkequal (b,Kstr);
//
r = mgetl(fullfile(path,"K_2.csv"));
b = csvTextScan(r, ascii(9), [], "string");
assert_checkequal (b,Kstr);
//
r = mgetl(fullfile(path,"K_3.csv"));
b = csvTextScan(r, " ", ",", "string");
assert_checkequal (b,Kstr);
//
r = mgetl(fullfile(path,"K_3.csv"));
b = csvTextScan(r, " ", [], "string");
assert_checkequal (b,Kstr2);
//
r = mgetl(fullfile(path,"K_4.csv"));
b = csvTextScan(r, ";", ",", "string");
assert_checkequal (b,Kstr);
//
r = mgetl(fullfile(path,"K_4.csv"));
b = csvTextScan(r, ";", [], "string");
assert_checkequal (b,Kstr2);
// =============================================================================
S = [
"Allan", "2", "CORNET";
"csv read/write toolbox", "3", "for scilab"
];
//
r = mgetl(fullfile(path,"S_1.csv"));
b = csvTextScan(r, "|", [], "string");
assert_checkequal (b,S);
//
r = mgetl(fullfile(path,"S_2.csv"));
b = csvTextScan(r, ascii(9), [], "string");
assert_checkequal (b,S);
//
r = mgetl(fullfile(path,"S_3.csv"));
b = csvTextScan(r, "!", ",", "string");
assert_checkequal (b,S);
//
r = mgetl(fullfile(path,"S_4.csv"));
b = csvTextScan(r, ";", ",", "string");
assert_checkequal (b,S);
//
r = mgetl(fullfile(path,"S_1.csv"));
b = csvTextScan(r, "|", ".", "string");
assert_checkequal (b,S);
//
r = mgetl(fullfile(path,"S_1.csv"));
b = csvTextScan(r, "|", ".", "double");
ref = [%nan , 2, %nan; %nan, 3, %nan];
assert_checkequal ( b , ref);
// =============================================================================
r = mgetl(fullfile(path, "double_quotes.csv"), 5);
ref = ['Dummy1', 'Dummy1'; ..
'Dummy2', 'Dummy2, Dummy2'; ..
'Dummy3', '(""Dummy3"")'; ..
'""Dummy4"" Dummy4','Dummy4'; ..
'Dummy5', 'Dummy5 ""Dummy5""'];
for i=1:5
b = csvTextScan(r(i), ",", [], "string");
assert_checkequal(b , ref(i,:));
end
|