문제

우리는 업그레이드/변환하는 여러 가지 오래된 데이터베이스에 액세스하는 MS-SQL.많은 이러한 데이터베이스 OLE 객체를 필드를 저장하는 PDF 파일이 있습니다.내가 찾는 방법으로 추출하려면 이 파일에 저장하는 우리 SQL 데이터베이스가 있습니다.본 비슷한 질문을 답할 수 있는 방법을 이렇게 하는 이미지 파일(jpg,bmp,gif,etc.)했는 방식으로 작동 PDF.

도움이 되었습니까?

해결책

마지막으로 가지고 일부 코드 작업을 위해 무엇을 원하는지 확인하여 주십시오.트릭은 무엇인지 결정 부분은 OLE 머리 제거습니다.여기에는 나를 위해 노력하고(에 따라 코드 )

    public static byte[] StripOleHeader(byte[] fileData)
    {
        const string START_BLOCK = "%PDF-1.3";
        int startPos = -1;

        Encoding u8 = Encoding.UTF7;
        string strEncoding = u8.GetString(fileData);

        if (strEncoding.IndexOf(START_BLOCK) != -1)
        {
            startPos = strEncoding.IndexOf(START_BLOCK);
        }

        if (startPos == -1)
        {
            throw new Exception("Could not find PDF Header");
        }

        byte[] retByte = new byte[fileData.LongLength - startPos];

        Array.Copy(fileData, startPos, retByte, 0, fileData.LongLength - startPos);

        return retByte;
    }

이만 작품에 대한의 PDF 파일이 있습니다.

다른 팁

OLEtoDisk

"이전에 저장 전체 내용을 포함하는 테이블의 OLE 객체를 디스크에 있습니다.이 필요하지 않 원래는 응용 프로그램으로 제공 서버 삽입니다.을 지원하는 모든 MS 오피스 문서,PDF,모든 이미지를 삽입 MS 사진 편집기,MS 페인트,페인트 공장 프로입니다.또한 지원합의 추출 패키지 등을 포함한 원본 파일명을 사용할 수 있다.담수를 생산하는 전체 인벤토리의 OLE 필드를 포함하여 연결된 경로와 이름.사용하는 구조화된 저장 API 의를 읽고 실제 내용의 분야"

http://lebans.com/oletodisk.htm

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top