ユーザーが PDF ファイルをアップロードできるようにする GAE アプリを設計しています。これにより、PDF ファイルを GAE Blobstore に保存します。
これらのブロブストアド ファイル内のテキストのチャンクを "ドロップ n' スワップ" する機能が必要です。つまり、(Blobstore に保存されている) ファイルから特定の文を選び出し、別のテキストに置き換える機能が必要です。
PDF ファイルがあり、ファイルの 505 番目のバイト/文字から次の文があることを知っているとします。
森は美しく、暗く、深い。
そして、その文を次のように置き換えます (drop n' swap):
しかし、私には守るべき約束があります。
次に、バイト 505 から 541 ( The woods are Lovely, dark and deep. ) を新しい文字列に置き換えたいことがわかります。
だから私は尋ねます:これは可能ですか?Blobstore API を使用すると、保存された blob から特定の文字セグメントを読み取ることができます。
// Now contains: "The woods are lovely, dark and deep."
String toDropNSwap = blobStoreService.fetchData(blobKey, 505, 541);
toDropNSwap = "But I have promises to keep.";
// This doesn't exist, just an example:
blobstoreService.dropAndSwap(505, 541, toDropNSwap);
しかし、特に新しいセグメントのサイズが異なる場合、バイトのセグメントを別のバイトのセグメントに置き換える方法がわかりません。もう 1 つ、最大 20 MB のファイルを扱う予定です。前もって感謝します。