2013-02-24 2 views
1

사용자가 PDF 파일을 업로드 할 수 있도록 GAE 응용 프로그램을 디자인했습니다.이를 통해 GAE Blobstore에 저장하게됩니다.GAE Blobstore API를 사용하여 n '스왑 텍스트 청크 삭제

나는이 blobstored 파일에서 "n 스왑"청크를 제거 할 수 있어야합니다. 즉, Blobstore에 저장되어있는 파일에서 특정 문장을 선택하여 다른 텍스트로 바꿀 수있는 능력이 필요합니다.

숲은 사랑스럽고 어둡고 깊은 :

내가 PDF 파일을 말해봐, 내가 파일에 505 바이트/문자로부터 시작되는 것을 알고, 문장이있다.

와 나는 함께 그 문장을 (드롭 N '스왑)을 대체 할 :

그러나 나는 지켜야 할 약속이있다.

그때 나는 나의 새로운 문자열 (숲은 사랑스럽고 어둡고 깊은이다.를) (541)를 통해 바이트 (505)를 교체 할 것을 알고있다.

그래서 물어보십시오 : 이 가능합니까? 특히, 내가 바이트의 다른 세그먼트와 바이트의 세그먼트를 대체 할 수있는 방법

// 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); 

하지만 내가 볼 수 없습니다 : 나는 Blob 저장소 API를 사용하면 저장된 BLOB에서 문자의 특정 세그먼트를 읽을 수 있습니다 것을 볼 새로운 세그먼트는 다른 크기입니다. 한 가지 더 : 파일 크기는 최대 20MB입니다. 미리 감사드립니다.

답변

3

물방울은 immutable 있습니다 그들이 만든거야 후 그들이 삭제 될 수 있지만

물방울은 수정할 수 없습니다. 각 BLOB는 데이터 스토어에 저장된 해당 BLOB 정보 레코드를 가지고 BLOB에 대한 세부 정보 (예 : 시간 및 내용 유형)를 제공합니다. blob 키를 사용하여 blob 정보 레코드를 가져 와서 해당 속성을 쿼리 할 수 ​​있습니다.

그래서 찾고있는 것은 불가능합니다. 대신 새 BLOB를 삭제하고 만들어야합니다.

+0

dang ...하지만 감사합니다 .-) – IAmYourFaja

관련 문제