入力として文字列を受け取り、そこからすべてのスペースと改行文字を取り除くメソッドがあります。これを実現するために、Java ライブラリの次のメソッドを使用しています。
public String clean(String s) {
return s.replaceAll(System.lineSeparator(),"").replaceAll(" ","");
}
これは Linux では問題なく動作しますが、Windows の場合、行区切り文字が文字列に含まれているため、行区切り文字を削除できません。
足りないものはありますか?Unix ベースのシステムでは改行文字が /n であり、Windows でそれが何であるかはわかりませんが、Java のドキュメントにあるように、System.lineSeparator() メソッドはプラットフォームに依存しない行区切り文字を提供する必要があります。