teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

3

コード記入

2018/07/18 05:16

投稿

torkia
torkia

スコア24

answer CHANGED
@@ -6,6 +6,14 @@
6
6
 
7
7
  なので、ラベルはfor_in文で量産して配列labelsに入れてif文で空文字列の表示を不可にしました。
8
8
  ```
9
+ for index in 0..<31 { //最大要素数分のラベルを生成
10
+ let label = UILabel()
11
+ (略)
12
+ label.text = dayArray[6 + (4 * index)]
13
+ labels.append(label)
14
+ scrollView.addSubview(label)
15
+ }
16
+
9
17
  // 空文字列が入ったラベルは表示させない
10
18
  for index in 0..<labels.count {
11
19
  if labels[index].text == "" {
@@ -14,7 +22,18 @@
14
22
  }
15
23
  ```
16
24
  もしくは、行末の空文字列(フィールドの区切り記号の群)を消せば、行末に自動的に既成された空文字列は認識されなくなります。
25
+ そうすると各配列の要素数でラベルを量産してその数だけラベルを表示させられます。
26
+ ```
27
+ for index in 0..<((dayArray.count - 5) / 4) { //各配列の要素数でラベルを生成
28
+ let label = UILabel()
29
+ (略)
30
+ label.text = dayArray[6 + (4 * index)]
31
+ labels.append(label)
32
+ scrollView.addSubview(label)
33
+ }
34
+
35
+ ```
17
- 消す方法は
36
+ 記号群を消す方法は
18
37
  ● csvファイルをswiftに読み込んだ後でそのファイルをクリックして表示させ、直接消す。
19
38
  ● csvファイルをテキストエディット(Mac付属のソフト)などで開きなおして行末の記号群を消してからswiftに取り込む。(↑OpenOfficeで作成した場合しかわかりませんが)
20
- ※OpenOfficeの方でcsv保存するときに行末にフィールドの区切り記号の群を既成させない方法は分かりません。
39
+ ※OpenOfficeの方でcsv保存するときに行末にフィールドの区切り記号の群を既成させない方法は分かりません。 なので、使用するcsvファイルの内容(行数やファイル数)が多い場合は記号群を消す方が大変かもしれません。保存時に既成させない方法がわかればいいのですが・・・。

2

コード記入

2018/07/18 05:16

投稿

torkia
torkia

スコア24

answer CHANGED
@@ -1,7 +1,10 @@
1
- csvファイルの作成をOpenOffice(フリーソフト)で作成しているのですが、csvファイルの行末を見るとタブ区切り記号が一番多いタブ数の行に合わせて他の行(タブ数が少ない行)にも既成されてました。その行末の記号群が空文字列として扱われていたようです。
1
+ csvファイルの作成をOpenOffice(フリーソフト)で作成しているのですが、csvファイルの行末を見ると「フィールドの区切り記号」に設定した記号一番多い要素数の行に合わせて他の行(要素数が少ない行)にも既成されてました。その行末の記号群が空文字列として扱われていたようです。
2
+ <例>
3
+ あ;;;;
4
+ か;き;く;;
5
+ さ;し;す;せ;そ //一番多い数の要素数
2
6
 
3
7
  なので、ラベルはfor_in文で量産して配列labelsに入れてif文で空文字列の表示を不可にしました。
4
-
5
8
  ```
6
9
  // 空文字列が入ったラベルは表示させない
7
10
  for index in 0..<labels.count {
@@ -9,11 +12,9 @@
9
12
  labels[index].isHidden = true
10
13
  }
11
14
  }
12
-
13
15
  ```
14
-
15
- もしくは、行末の空文字列(タブ区切り記号群)を消せば、行末に自動的に既成された空文字列は認識されなくなります。
16
+ もしくは、行末の空文字列(フィールドの区切り記号群)を消せば、行末に自動的に既成された空文字列は認識されなくなります。
16
17
  消す方法は
17
18
  ● csvファイルをswiftに読み込んだ後でそのファイルをクリックして表示させ、直接消す。
18
19
  ● csvファイルをテキストエディット(Mac付属のソフト)などで開きなおして行末の記号群を消してからswiftに取り込む。(↑OpenOfficeで作成した場合しかわかりませんが)
19
- ※OpenOfficeの方でcsv保存するときに行末にタブ区切り記号群を既成させない方法は分かりません。
20
+ ※OpenOfficeの方でcsv保存するときに行末にフィールドの区切り記号群を既成させない方法は分かりません。

1

コード記入

2018/07/18 03:55

投稿

torkia
torkia

スコア24

answer CHANGED
@@ -1,4 +1,5 @@
1
- csvファイルの行末を見るとタブ区切りの記号が一番いタブ数に合わせて既成されてました。その記号が空文字列として扱われていたようです。
1
+ csvファイルの作成をOpenOffice(フリーソフト)で作成しているのですが、csvファイルの行末を見るとタブ区切りの記号が一番いタブ数の行に合わせて他の行(タブ数が少ない行)にも既成されてました。その行末の記号が空文字列として扱われていたようです。
2
+
2
3
  なので、ラベルはfor_in文で量産して配列labelsに入れてif文で空文字列の表示を不可にしました。
3
4
 
4
5
  ```
@@ -9,4 +10,10 @@
9
10
  }
10
11
  }
11
12
 
12
- ```
13
+ ```
14
+
15
+ もしくは、行末の空文字列(タブ区切りの記号群)を消せば、行末に自動的に既成された空文字列は認識されなくなります。
16
+ 消す方法は
17
+ ● csvファイルをswiftに読み込んだ後でそのファイルをクリックして表示させ、直接消す。
18
+ ● csvファイルをテキストエディット(Mac付属のソフト)などで開きなおして行末の記号群を消してからswiftに取り込む。(↑OpenOfficeで作成した場合しかわかりませんが)
19
+ ※OpenOfficeの方でcsv保存するときに行末にタブ区切りの記号群を既成させない方法は分かりません。