![](/img/trans.png)
[英]Pass unix line separator in a Windows bat script to java.exe
[英]Line separator for Windows in java
我想將一些單詞保存到* .txt文件中。 但是有一個條件:每個單詞都必須換行。 所以我這樣寫:
String content ="";
String nl = System.lineSeparator();
content += "my" + nl + "some" + nl + "random" + nl + "words";
但是此代碼不起作用-所有單詞都在同一行中。
所以我嘗試使用特殊字符- \\r\\n
:
String content ="";
content += "my" + "\r\n" + "some" + "\r\n" + "random" + "\r\n" + "words";
仍然沒有用-文件中的所有單詞都在同一行:
隨機詞
除此之外:我的字符串content
還通過以下方式保存到文件中:
<a href="data:text/txt;charset=utf-8,<%=content%>" download="results.txt"><button class="button">Download</button></a>
我應該使用哪種分隔符將單詞放在另一行?
(我正在使用Netbeans 8.0。在Windows記事本中打開文件)。
嘗試使用System.getProperty("line.separator")
在此處閱讀有關系統屬性以及完整的系統屬性列表。
System類維護一個Properties對象,該對象描述當前工作環境的配置。
“ line.separator”-操作系統用於分隔文本文件中的行的序列
System.lineSeparator()聲明了什么?
返回系統相關的行分隔符字符串。 它總是返回相同的值-系統屬性line.separator的初始值。
在UNIX系統上,它返回“ \\ n”; 在Microsoft Windows系統上,它返回“ \\ r \\ n”。
System.getProperty()
? 可以通過傳遞參數來更改“ line.separator”屬性,如下所示
java -Dline.separator=
在data
URI方案中使用base64
:
<a href="data:text/txt;charset=utf-8;base64,<%=base64_content%>" download="results.txt"><button class="button">Download</button></a>
在您的Java代碼中執行以下操作:
String content ="";
String nl = System.getProperty("line.separator");
content += "my" + nl + "some" + nl + "random" + nl + "words";
content = DatatypeConverter.printBase64Binary(content.getBytes("utf-8"));
演示: http : //jsfiddle.net/bDRAq
好吧,這取決於您寫下內容的方式。 如果將其寫入文件系統上的文件,則很可能會正確結束。 但是,您並沒有使用程序將其保存到文件中,而是讓瀏覽器通過在html文件中包含鏈接來做到這一點。 在HTML中包含字符時,您需要使用URLEncoder類對其進行編碼。
在我看來,由於您在WebContainer中工作,因此由於您是JSP結構,因此您還可以實現一個Servlet,該Servlet返回請求的數據。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.