我的一些字符串后面有莫名其妙的“?”号我在编辑器里选择从ascii转成utf-8方式后就都好了那么我在java程序中如何转呢?请指点迷津

解决方案 »

  1.   

    String str = str.getByte("8859_1"), "UTF-8")
      

  2.   

    String str = new String(str.getByte("8859_1"), "UTF-8");
      

  3.   

    java.net.URLEncoder.encode(你的字符串,"utf-8");
      

  4.   

    哦。看来问的有些毛病,看来不是utf的问题。是这样的,比如,下面这个字符串谁能把带<>这些标签都去掉,只留文本。
    String shuai = 
    "<P class=MsoNormal style=\"MARGIN: 0cm 0cm 0pt; LAYOUT-GRID-MODE: char; LINE-HEIGHT: 150%; mso-layout-grid-align: none\"><SPAN style=\"FONT-SIZE: 14pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 12.0pt; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'\">中华医学会、中华医学会杂志社:</SPAN><SPAN lang=EN-US style=\"FONT-SIZE: 14pt; mso-bidi-font-size: 12.0pt\"><?xml:namespace prefix = o ns = \"urn:schemas-microsoft-com:office:office\" /><o:p></o:p></SPAN></P><P class=MsoNormal style=\"MARGIN: 0cm 0cm 0pt; LAYOUT-GRID-MODE: char; TEXT-INDENT: 28.5pt; LINE-HEIGHT: 150%; mso-layout-grid-align: none\"><SPAN style=\"FONT-SIZE: 14pt; COLOR: black; FONT-FAMILY: 宋体; mso-bidi-font-size: 12.0pt; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'\">《中华医学杂志》是</SPAN><SPAN style=\"FONT-SIZE: 14pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 12.0pt; "+
            "mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'\">中国医学界最具学术权威性的杂志系列,其<SPAN style=\"COLOR: black\">英文版</SPAN>是中国医学界面向世界的一个重要窗口。近年来,随着我国医学生命科学不断发展,基础与临床医学科研成果迭出,医学科技信息的交流与共享日趋频繁。在此形势下,医学界广大科技工作者对《中华医学杂志》办刊周期与规模提出了更高的要求。参考《</SPAN><SPAN lang=EN-US style=\"FONT-SIZE: 14pt; mso-bidi-font-size: 12.0pt\">NATURE</SPAN><SPAN style=\"FONT-SIZE: 14pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 12.0pt; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New ";
      

  5.   

    StringTokenizer  类有你需要的功能
    我写了个测试程序你看看 你可以对着改一改就能用了
     
    import java.util.*;
    public class mao1
    {
       public static void main(String[] args){
    String s="jdkkfd<111111>kdfjkdfj<32323>kdfjkdjfkd<4343434>kdkfj";
    StringTokenizer st=new StringTokenizer(s,"<");
    String result="";
       while(st.hasMoreTokens())
       {
       String token=st.nextToken();
       StringTokenizer st1=new StringTokenizer(token,">");
       String temp=st1.nextToken();
       if (st1.hasMoreTokens())
       {
               result=result+st1.nextToken();
       }
       else{
       result=result+temp;
       }
       }
       System.out.println(result);
      
        }  
    }
      

  6.   

    多谢了!不过把我的字符串放到你的算法里执行还是有P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; LAYOUT-GRID-MODE: char; LINE-HEIGHT: 150%; mso-layout-grid-align: none"这样的码,只是“<”这些去掉了。能否帮我调一下,还有这个类的方法都是什么含义呢?解释一下。谢谢!