質問編集履歴

3

追記修正

2020/01/13 03:40

投稿

chocolate_pie
chocolate_pie

スコア26

test CHANGED
File without changes
test CHANGED
@@ -372,7 +372,7 @@
372
372
 
373
373
  ```
374
374
 
375
- DBの中身(cogoal)
375
+ DBの中身CSV(cogoal)
376
376
 
377
377
  ![イメージ説明](9b25ec2c43d91ce3540d54a34d332d04.png)
378
378
 
@@ -388,7 +388,7 @@
388
388
 
389
389
  ①thymeleafで以下のようなコードを書いて試しましたがスペースで表示されるのは変わりませんでした。
390
390
 
391
- そもそもDBのデータに\nが入っていないので反応なし。そこで、DBに直で\nを打ち込んだらやはりスペースで表示されました。 &nbspの代わりに<br>を入れたら文字列として認識されました。
391
+ そもそもDBのデータに\nが入っていないので反応なし。そこで、DBに直で\nを打ち込んだらやはりスペースで表示されました。 &nbspの代わりに<br/>を入れたら文字列として認識されました。
392
392
 
393
393
  ```HTML
394
394
 

2

詳細追記

2020/01/13 03:40

投稿

chocolate_pie
chocolate_pie

スコア26

test CHANGED
File without changes
test CHANGED
@@ -8,6 +8,8 @@
8
8
 
9
9
  入力フォームから改行されて登録された値をCSV出力したところ、改行コード\nが入っていました。
10
10
 
11
+ が、DBViwerで中身を見ると何も改行コードがありません。
12
+
11
13
  また、入力フォームのtextareaで既存データを表示する際は改行されて表示されます。
12
14
 
13
15
  利用しているDBはMySQlです。
@@ -386,6 +388,8 @@
386
388
 
387
389
  ①thymeleafで以下のようなコードを書いて試しましたがスペースで表示されるのは変わりませんでした。
388
390
 
391
+ そもそもDBのデータに\nが入っていないので反応なし。そこで、DBに直で\nを打ち込んだらやはりスペースで表示されました。 &nbspの代わりに<br>を入れたら文字列として認識されました。
392
+
389
393
  ```HTML
390
394
 
391
395
  <td th:text="*{#strings.replace(cogoal, '\n', ' &nbsp')}" ></td>

1

検証追加

2020/01/13 02:57

投稿

chocolate_pie
chocolate_pie

スコア26

test CHANGED
File without changes
test CHANGED
@@ -382,6 +382,32 @@
382
382
 
383
383
 
384
384
 
385
+ 追記
386
+
387
+ ①thymeleafで以下のようなコードを書いて試しましたがスペースで表示されるのは変わりませんでした。
388
+
389
+ ```HTML
390
+
391
+ <td th:text="*{#strings.replace(cogoal, '\n', ' &nbsp')}" ></td>
392
+
393
+ ```
394
+
395
+ ②java側で文字列の変換を試みましたがObject型とString型の不一致でHTMLに値が渡りませんでした。
396
+
397
+ ```java
398
+
399
+ CoGoal cocogoal = cogoalservice.findCurrent();
400
+
401
+ String cogoal1=cocogoal.toString();
402
+
403
+ String cogoal=cogoal1.replace("\n", "&nbsp");
404
+
405
+ model.addAttribute("cogoal", cogoal);
406
+
407
+ ```
408
+
409
+
410
+
385
411
  ### 補足情報(FW/ツールのバージョンなど)
386
412
 
387
413