各位大虾,请问“\”在数据库里是怎么处理的阿?比如我从数据库中读出字符串“****\n****”然后显示在文本域里,可是竟然输出\n了,没有起到换行的作用,但是如果直接写在程序的字符串里,就可以换行,求各位帮帮忙啊,急等...

解决方案 »

  1.   

    你存进去的\n是出来后是当字符串处理的  必须再存进去的时候加上 "\"转意取出来就可以换行了"\n" 存的时候要存 "\\n" 取出来就是换行字符了
      

  2.   

    你用的TextArea 它是自己换行的,即使存入数据库中,读出来的也有有换行的.
      

  3.   


    public class TestInput
    {
    public static void main(String args[])
    {
    System.out.println("nihao"+\n+"java");
    }
    }试问这样可以吗????????????????
      

  4.   

    这个问题还真么思考过~~~~·
    楼上的
    println中的ln不就是换行么?如果要换行用这不就行了么?
      

  5.   

    6楼
    你可以这样
    Java code
    public class TestInput
    {
        public static void main(String args[])
        {
            System.out.prinln("nihao"+"\n"+"java");//"\n"
        }
    }
     
     
      

  6.   

    感谢各位的热心帮助啊,试问如果我存进数据库的是\\n,那么通过getString(*)读出来的字符串岂不就是\\n了?然后把读出来的这个值再放到文本域里,会换行吗?
      

  7.   

    把从数据库中读取的字符串储存在一个字符串变量中,然后通过求字串的函数把字符串把字符串追加到TextArea里面就可以了。
    具体做法:
    String str="*****";//从数据库中读取的字符串
    TextArea text=new TextArea();
    int i=0;
    while(i<str.lenth())
    {
        if(str.charAt(i)=='\'&&str.charAt(i+1)=='n')
        {
            text.append('\n');
        }
        else
        {
            text.append(str.charAt(i));
        }
        i++;
    }
    这样就应该可以了。
      

  8.   

    因为在java程序中\n在字符串中是一个字符,而java程序在数据库中读取的\n为字符\和字符n两个字符,所以无法起到换行的作用。如果想起到换行的作用请参照上面的代码。
      

  9.   

    上面代码有一个错误,while(i<str.lenth())应该改为while(i<str.lenth()-1)。
      

  10.   

    谢谢楼上的uteryv大哥了,不过小弟冒昧地挑个错,
    if(str.charAt(i)=='\'&&str.charAt(i+1)=='n') 
        { 
            text.append('\n'); 
        } 
    此时只是把\替换为\n了,到下一个n的话,就到else里直接输出了,这里也要把n忽略掉吧?
    感谢你提供的思路,我去试下,先把分给你了。