0

rtf を取得して特定のタグを SQL データに置き換える FileMerge クラスを作成しました。すべて問題ありませんが、1 つのタグを 1 つまたは複数の行に置き換える 1 つの部分で、ファイルを置き換えますが、単語で開いたときに \n または \r\n が新しい行を作成しません。

コード:

String otherFamilyString="\n";


    for(int i=0;i<OtherFamily.size();i=i+TotalArguments)
    {
        otherFamilyString +=  "\n"+OtherFamily.get(i+FamilyMbrId) +"|\t"+ OtherFamily.get(i+FamilyMbrName) +"|\t"+ OtherFamily.get(i+FamilyStatus)+"|\t"
        + OtherFamily.get(i+FamilyCoveragetype) +"|  "+ OtherFamily.get(i+FamilyRelationship) +"|" ;
        System.out.print(i+" "+otherFamilyString);


    }
    newtext = newtext.replaceAll("OTHERFAMILY",otherFamilyString);



    FileWriter writer = new FileWriter(outPutDir+memberInfo.get(GroupId).replace(" ", "")+newName.replace("*", "")); 
    writer.write(newtext);//write the new file 
    writer.close();

System.getProperty("line.separator") も試しましたが失敗しました。

ファイルをメモ帳で開くと、正しい構造に示されているこの部分を除いて、すべてのコードがリッチ テキストになっていることがわかります。この文字列をリッチ テキスト形式で記述して、Word で適切に表示する方法が必要だと思います。

助けてくれてありがとう、イダン。

4

2 に答える 2

1

RTF 形式に関するドキュメントを次に示します: http://search.cpan.org/~sburke/RTF-Writer/lib/RTF/Cookbook.pod#RTF_Document_Structure

コマンドを使用して改行を指定すると書かれています\line

于 2011-08-02T13:54:08.023 に答える
0

RTFでは、改行はテキスト内の改行で示されません。代わりに、これを行うには正しい制御シーケンスを使用する必要があります。仕様をざっと見てみる\lineと、ハード改行のように見え\par、段落区切りのように見えます。

于 2011-08-02T13:56:28.207 に答える