sunny_dev
sunny_dev

Reputation: 755

Newline escape sequence not unescaping in proper way in Java

I am fetching a String from SQL server 2008 database into my Java code and trying to print it. Unfortunately the newline escape sequence is not automatically converted into newline. I know the reason is we are not putting the string inside the double quotes in the Database table. Below is the sample value stored in the varchar column :

Remarks \nTestRemarks Issue\nTestIssue\n\nRegards \nSunny

When I am printing it on log file it is printing along with \n. My application convention doesn't allow me to store String within double quotes inside Database varchar column, therefore I chose to explicitly unescape it using Apache StringEscapeUtils.unescapeJava(str). Unfortunately, the result is that 1st and last newline escape sequence is successfully converted to newlines, but rest all newline escapes remain unchanged. If I put space before the newline escape sequence in the DB, then it gets recognized and converted,but not otherwise. Can you please help how I solve this situation.

Upvotes: 1

Views: 376

Answers (2)

sunny_dev
sunny_dev

Reputation: 755

my setup is working in wierd manner. for some reason after system restart and eclipse restart and tomcat restart, everything seems to work seamlessly. closing the answer as non-issue

Upvotes: 0

ganaraj
ganaraj

Reputation: 420

How about doing the opposite once you retrive it, ie StringEscapeUtils.escapeJava(str) or repeat StringEscapeUtils.unescapeJava(str) after you retrieve it from the database. Either one might work.

Upvotes: 1

Related Questions