파일 확장자는 .XFDL
형식의 문서 파일을 식별합니다. 이는 XML 기반 문서 및 템플릿 포맷 표준에 속합니다. 이 형식은 XML 파일 형식과 완전히 동일하지만 보안 통신에 사용하기 위한 암호화 수준이 포함되어 있습니다.
저는 여기에서 찾은 파일 뷰어를 사용하여 XFDL 파일을 보는 방법을 알고 있습니다. 또한 파일:저장/다른 이름으로 저장을 통해 파일을 수정하고 저장할 수도 있습니다. 하지만 이 파일을 즉석에서 수정하고 싶습니다. 어떤 제안이 있나요? 이것이 가능한가요?
업데이트 #1: 이제 '.xfdl'을 성공적으로 디코딩하고 압축을 풀어서 편집할 수 있는 XML 파일로 만들었습니다. 이제 수정 된 XML 파일을 다시 base64-gzip으로 다시 인코딩하는 방법을 찾고 있습니다 (Ruby 또는 명령 줄 사용).
인코딩이 base64인 경우 웹에서 우연히 발견한 솔루션입니다 링크:
'encoding=base64'로 저장된 XDFL 파일 디코딩하기. 파일은 다음과 같이 저장됩니다:
application/vnd.xfdl;content-encoding="base64-gzip"
로 저장된 파일은 단순한 base64로 인코딩된 gzip 파일입니다. 이러한 파일은 먼저 디코딩한 다음 압축을 풀면 쉽게 XML로 복원할 수 있습니다. 우분투에서는 다음과 같이 할 수 있습니다:
sudo apt-get install uudeview uudeview -i yourform.xfdl gunzip -S "" < UNKNOWN.001 > yourform-unpacked.xfdl
첫 번째 명령은 base64 등을 디코딩할 수 있는 패키지인 uudeview를 설치합니다. 이 패키지가 설치되면 이 단계를 건너뛸 수 있습니다.
양식이 'yourform.xfdl'로 저장되어 있다고 가정하면, xfdl 파일에 파일 이름이 포함되어 있지 않으므로 uudeview 명령은 내용을 'UNKNOWN.001'로 디코딩합니다. '-i' 옵션은 uudeview를 비대화형으로 만들므로 이 옵션을 제거하면 더 많은 제어 기능을 사용할 수 있습니다.
마지막 명령은 디코딩된 파일을 'yourform-unpacked.xfdl'이라는 파일로 압축합니다. "
다른 가능한 해결책 - 여기
참고: 긴 코드 문자열에는 따옴표로 묶은 블록 코드가 작동하지 않습니다.
지금 제가 생각할 수 있는 유일한 답은 uudeview의 매뉴얼을 읽어보라는 것입니다.
제가 여러분을 돕고 싶지만 이 분야의 전문가는 아니기 때문에 더 잘 아는 사람이 와서 도와줄 때까지 기다려야 합니다.
그 동안 도움이 될 만한 문서에 대한 링크를 제공해 드릴 수 있습니다:
도움이 되지 않는다면 죄송합니다.
이 작업을 수행하기 위해 Ruby를 사용할 필요는 없으며, Ruby의 Base64 모듈을 사용하여 다음과 같이 문서를 인코딩할 수 있습니다:
irb(main):005:0> require 'base64'
=> true
irb(main):007:0> Base64.encode64("Hello World")
=> "SGVsbG8gV29ybGQ=\n"
irb(main):008:0> Base64.decode64("SGVsbG8gV29ybGQ=\n")
=> "Hello World"
그리고 커널#system을 사용하여 gzip/gunzip을 호출할 수 있습니다:
system("gzip foo.something")
system("gunzip foo.something.gz")