
Η `.XFDL`επέκταση του αρχείου προσδιορίζει `XFDL`σχηματοποιημένα αρχεία εγγράφων. Αυτά ανήκουν στο έγγραφο και το πρότυπο πρότυπο μορφοποίησης XML-based. Αυτή η μορφή είναι ακριβώς όπως η μορφή αρχείου XML, ωστόσο, περιέχει ένα επίπεδο κρυπτογράφησης για χρήση σε ασφαλείς επικοινωνίες.


Ξέρω πώς να δείτε τα αρχεία XFDL χρησιμοποιώντας ένα πρόγραμμα προβολής αρχείων που βρήκα [εδώ](http://www.e-publishing.af.mil/viewerdownload.asp) . Θα ήθελα επίσης να τροποποιήσετε και να αποθηκεύσετε αυτά τα αρχεία κάνοντας File: Save / Αποθήκευση ως. Θα ήθελα, όμως, να τροποποιήσει αυτά τα αρχεία σχετικά με τη μύγα. Οποιεσδήποτε προτάσεις? Είναι αυτό ακόμη δυνατό;


Ενημέρωση # 1: Έχω τώρα επιτυχώς αποκωδικοποιηθεί και unziped ένα `.xfdl`σε ένα αρχείο XML η οποία στη συνέχεια μπορώ να επεξεργαστείτε. Τώρα, Ψάχνω για έναν τρόπο για να ξανά-κωδικοποιήσει το τροποποιημένο αρχείο XML πίσω στο base64-gzip (χρησιμοποιώντας Ruby ή τη γραμμή εντολών)

 
Πώς μπορώ να τροποποιήσω τα αρχεία .xfdl; (Update # 1)
======================================================



Εάν η κωδικοποίηση είναι **base64** τότε αυτή είναι η λύση που έχω σκοντάψει επάνω στο διαδίκτυο [σύνδεσμο](http://www.suares.an/) :


«Αρχεία Αποκωδικοποίηση XDFL αποθηκευτεί με“encoding = base64”αρχεία αποθηκεύονται με.: 



```
application/vnd.xfdl;content-encoding="base64-gzip"

```

είναι απλή κωδικοποίηση base64 αρχεία gzip. Μπορούν εύκολα να αποκατασταθεί XML από την πρώτη αποκωδικοποίηση και στη συνέχεια αποσυμπίεση τους. Αυτό μπορεί να γίνει ως εξής στο Ubuntu:



```
sudo apt-get install uudeview uudeview -i yourform.xfdl gunzip -S "" < UNKNOWN.001 > yourform-unpacked.xfdl 

```

Η πρώτη εντολή θα εγκαταστήσει uudeview, ένα πακέτο που μπορεί να αποκωδικοποιήσει base64, μεταξύ άλλων. Μπορείτε να παραλείψετε αυτό το βήμα, εφόσον έχει εγκατασταθεί.


Υποθέτοντας φόρμα σας αποθηκεύεται ως «yourform.xfdl», η εντολή uudeview θα αποκωδικοποιήσει τα περιεχόμενα ως «UNKNOWN.001», δεδομένου ότι το αρχείο XFDL δεν περιέχει ένα όνομα αρχείου. Το «-i» επιλογή κάνει uudeview uninteractive, αφαιρέστε αυτήν την επιλογή για περισσότερο έλεγχο.


Η τελευταία εντολή gunzips το αρχείο αποκωδικοποιημένο σε ένα αρχείο με το όνομα «yourform-unpacked.xfdl». "


**Μια άλλη** πιθανή λύση - [εδώ](http://www.chilkatsoft.com/p/p_531.asp)


*Πλευρά Σημείωση: Αποκλεισμός εισηγμένες <code> δεν λειτουργεί για μεγάλες χορδές του κώδικα*

 

Η μόνη απάντηση που μπορώ να σκεφτώ αυτή τη στιγμή είναι - διαβάστε το εγχειρίδιο για uudeview.


Όσο και θα ήθελα να σας βοηθήσουμε, δεν είμαι ειδικός σε αυτόν τον τομέα, έτσι θα πρέπει να περιμένουμε για κάποιον πιο πεπειραμένο για να έρθει εδώ κάτω και να σας βοηθήσει.


Εν τω μεταξύ, μπορώ να σας δώσω συνδέσμους σε ορισμένα έγγραφα που μπορεί να σας βοηθήσουν:


* [UUDeview Αρχική Σελίδα](http://www.fpx.de/fp/Software/UUDeview/)
* [χρησιμοποιώντας XDFLengine](http://xdflengine.sourceforge.net/doc_1037.html)
* [Gettting ξεκίνησε με την XDFL Engine](http://xdflengine.sourceforge.net/doc_1044.pdf)


Συγγνώμη αν αυτό δεν σας βοηθήσει.

 

Δεν χρειάζεται να βγούμε από Ruby για να το κάνετε αυτό, μπορείτε να χρησιμοποιήσετε τη μονάδα Base64 σε Ruby για την κωδικοποίηση του εγγράφου ως εξής:



```
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"

```

Και μπορείτε να καλέσετε gzip / gunzip χρησιμοποιώντας Kernel # συστήματος:



```
system("gzip foo.something")
system("gunzip foo.something.gz")

```
 