Domanda:
Come decodificare un formato di file di dati proprietario (ad esempio Smartboard Notebook)?
Thorn
2013-03-26 02:45:02 UTC
view on stackexchange narkive permalink

Come devo iniziare a provare a decodificare questo formato di file? L'unica cosa a cui riesco a pensare è salvare un semplice file e poi scavare con un editor esadecimale. Ma poiché il formato del file può essere una sorta di archivio, sembra l'approccio sbagliato. Sono sempre stato un po 'interessato all'idea di decodificare un formato di file, ma non ci ho mai provato. Come devo iniziare?

In particolare, sono interessato a Smart Notebook che carica e salva i dati in file .notebook. Questo è un formato di file proprietario non documentato. SMART è il principale produttore di lavagne bianche e il loro software per notebook è quindi uno dei formati più popolari per i contenuti educativi (di presentazione). Esiste uno standard aperto per i file della lavagna e Open Sankore è un programma open source in grado di aprirli e salvarli. Tuttavia, Smart Notebook non è completamente compatibile con il formato lavagna aperta, quindi mi piacerebbe davvero capire il formato di file .notebook in modo da poter scrivere software che lo utilizzi. Gli stand aperti (file .iwb) sono archivi zip che contengono immagini e dati SVG. Mi viene in mente che i file .notebook possono anche essere compressi o almeno contenere un numero di sotto-file al suo interno (come immagini e file swf).

È ragionevole credere che una struttura di directory possa essere incorporata nei file .notebook?
Ecco un sito con i file smartboad come riferimento. http://www.jmeacham.com/smart.board.htm
Non vedo alcun supporto integrato per i file .notebook. Solo pdf, iwb, immagini e ubz penso che fosse. Se conosci un plugin, forse dovresti elencarlo altrimenti sembra che sankore non supporti affatto .notebooka.
@cb88 Sankore non supporta i file .notebook; per quanto ne so non esiste alcun software in grado di leggere .notebook oltre a Smart Notebook. Mi sembra che i file .notebook siano i file .doc di MS Word delle lavagne interattive perché Smart è il principale fornitore di software in questo settore. Ecco perché voglio decodificare il formato.
@zv_ Penso che sia ragionevole aspettarsi una struttura di directory o almeno un modo in cui un file notebook contenga altri file. Quando il contenuto viene inserito in un file di blocco note (immagini, audio, Adobe .swf), questi vengono incorporati nella pagina e parte del file.
-1
Potrebbe essere davvero utile e la domanda "principale", se renderlo più astratto. Informazioni sull'inversione dei formati di file. E la risposta potrebbe contenere tecniche `` comuni '' per farlo, scrivendo script python / etc, usando editor esadecimali avanzati, come ad es. 010 editor e così via. Informazioni sulla ricerca fuzzy e sulla corrispondenza dei modelli binari. Come come vari strumenti statistici, come ad es. Cantor Dust (https://sites.google.com/site/xxcantorxdustxx/) (che è ancora un prototipo).
@Thorn: Hai ottenuto le informazioni sul file xbk? Hai ricevuto il documento delle specifiche per lo stesso o l'hai decodificato manualmente?
Nessuno dei due. Il formato non è ufficialmente documentato dalle tecnologie Smart, ma in realtà è solo un file zip. Guardando alcuni esempi è stato sufficiente per ottenere il succo e poiché XML è leggibile, sono in grado di salvare alcuni semplici file per capire meglio il formato. La grafica viene archiviata come SVG.
Due risposte:
#1
+20
Dougall
2013-03-26 03:56:20 UTC
view on stackexchange narkive permalink

Ho scaricato abc chant.notebook dal sito cb88 collegato a:

  $ file "abc chant.notebook" abc chant .notebook: Zip archivio dati, almeno v2.0 per estrarre $ unzip -t "abc chant.notebook" Archivio: abc chant.notebook testing: images / temp (1) .png OK ... circa 200 righe simili .. . testing: attachments / Zachary.JPG OK Nessun errore rilevato nei dati compressi di abc chant.notebook. $  

È un file zip valido contenente principalmente XML e file di immagine. I file .notebook a cui ti riferivi sono diversi da questo file? Se è così, potresti caricare un campione?

So che questo non entra nel processo dietro l'inversione di un formato di file proprietario, per il quale mi scuso. Si spera che qualcun altro possa fornire una risposta più interessante a questo riguardo.

Wow, è molto più facile di quanto pensassi! Devo aver controllato una versione precedente dei file del notebook: xbk. Non sono file zip ma .notebook lo è! In qualche modo pensavo di averlo già controllato e non ci sono tornato.
#2
+18
0xC0000022L
2013-03-26 03:57:15 UTC
view on stackexchange narkive permalink

Beh, ovviamente i dettagli dipenderanno molto dai dettagli del formato del file e da ciò che ti aspetti di ottenere in generale. Tuttavia, alcuni passaggi saranno sostanzialmente gli stessi. Una cosa che potresti fare è:

  1. sforzati di trovare tutti i tipi di indizi sul formato. Questa può essere una piccola nota in qualche bacheca o la copia cache di un sito web di qualche anno che è scomparso. Spesso le gemme non vengono visualizzate come risultati di ricerca principali quando stai cercando qualcosa di abbastanza specifico. Sfogliare le pagine dei risultati di ricerca può avere senso . Assicurati anche di utilizzare strumenti come file che cercano byte magici e sarebbero in grado di identificare cose non ovvie a occhio nudo.
  2. trova un programma proprietario che utilizzi il formato ed è in grado di leggerlo / scriverlo (sembra che tu lo abbia)
    1. Usa una tecnica di errore di prova & come apportare modifiche distinte al documento, salvarle e osservare e annotare le differenze, AFAIK questo è il modo i formati di file MS Office sono stati decodificati inizialmente per StarOffice (ora OOo e LibreOffice)
    2. decodificare il programma stesso per trovare le routine di base che leggono e scrivono il formato dei dati
  3. trova un programma open source allo stesso modo -> leggi il suo codice sorgente

Se capisci la lingua in cui è scritto il programma dell'opzione 3, nessun problema. Se non ce l'hai o se devi affrontare altre sfide, devi ricorrere alla buona vecchia tecnica delineata al punto 2, riparare gli spazi vuoti con i pezzi che raccogli con il metodo 1.

Il punto 2.1 dovrebbe essere ovvio: vuoi scoprire come viene codificato il testo ricorsivo? Digita del testo, formattalo, salva, osserva la modifica. Risciacquare, insaponare, ripetere.

Il punto 2.2 richiederà molto più impegno e dovrebbe probabilmente essere usato scarsamente per assicurarsi di ottenere i dettagli dalla 2.1 correttamente.



Questa domanda e risposta è stata tradotta automaticamente dalla lingua inglese. Il contenuto originale è disponibile su stackexchange, che ringraziamo per la licenza cc by-sa 3.0 con cui è distribuito.
Loading...