2

私のアプリでは、QRコードを作成し、そのビットマップを取得してテキストをビットマップに追加しましたが、テキストがビットマップより長く伸びないようにする必要があります。したがって、私がやりたいのは、25文字を使用してテキストの配列を作成し、その25文字のセクションで( "")の最後のインデックスを見つけることです。そのスペースで、\nに配置されていたスペースを置き換えて新しい行を開始できるようにしたいと思います。

Hello this is my name and I am longer than 25 charters and I have lots of spaces so that this example will work well.したがって、計画は、「 」のような文字列がある場合です。

これを出したい

Hello this is my name and
I am longer than 25 
charters and I have lots 
of spaces so that this 
example will work well.

これを行うために、25文字を数え、最も憤慨したスペースに戻りました。その時点でEnterキーを押して、アプリにこれを実行してもらいたいと思います。

私は英語が苦手なので、意味がわからない場合は教えてください。説明しようと思います。ありがとう

4

2 に答える 2

3

私はこれをテストしていませんが、あなたはそれを試して、必要に応じて微調整することができます

String fullText = "your text here";
String withBreaks = "";
while( fullText.length() > 25 ){
    String line  = fullText.substring(0,24);
    int breakPoint = line.lastIndexOf( " ");
    withBreaks += fullText.substring(0,breakPoint ) + "\n";
    fullText = fullText.substring( breakPoint );
withBreaks += fullText;
于 2012-08-20T18:58:14.120 に答える
0

char [] way(もっとCのように):

 public static String reduceLength(String s, int len){
    char [] c = s.toCharArray();
    int i=len, j=0, k;
    while(true){
     for(k=j; k<=i; k++){
         if (k >= s.length()) return new String(c);
         if (c[k] == ' ') j=k;
     }
     c[j] = '\n';
     i= j+ len;
    }
}

これは安全ではなく、私が一緒に投げたものです。

于 2012-08-20T19:20:25.787 に答える