2010-02-27 12 views
9

Ho file .txt che sono per lo più documenti (veramente) html (hanno l'intestazione, il corpo, i tag html, ecc.). (Sto lavorando in ambiente Windows qui). Vorrei che qualsiasi browser li leggesse facilmente come documento html (documento html con normale suffisso .html). In questo momento devo rinominare il file .txt per poterlo leggere nel browser (Es: myfile.txt -> myfile.txt.htm). Qualche trucco che possiamo applicare per ingannare il browser subito?Come forzare un file txt da leggere come documento html dai browser?

Domanda relativa: C'è un codice che potrei aggiungere sopra quel file .txt in modo che solo i file .txt con quel codice siano aperti come documento html e visti come tali dai browser? (il codice potrebbe essere qualsiasi cosa aggiunto con editor esadecimale di plain ascii). Grazie.

+0

Stai aprendo questi file tramite un server HTTP o li stai appena aprendo dal tuo file system locale? es .: la barra degli indirizzi inizia con il file: o http: quando stai guardando uno di questi file nel tuo browser? –

+0

è solo locale - nessun server Web interessato. (quindi è aperto come file: /// ...). – volvox

+0

Potrebbe essere una domanda stupida, ma quando sono file HTML, perché li chiami '* .txt' e non' * .html'? –

risposta

8

Dal momento che stai leggendo il file direttamente fuori del vostro file system (cioè : utilizzando un URL file: anziché http: o altro) il browser utilizza l'estensione per determinare il tipo di contenuto del file. Come viene eseguita questa mappatura dall'estensione al tipo di contenuto varia da browser a browser (e anche da OS a OS in una certa misura).

Prima di tutto, dovrei dire che sarei un po 'paura di fare questo tipo di cambiamento. Probabilmente c'è un sacco di codice che ha un'ipotesi codificata che le mappe .txt corrispondano a text/plain, pertanto è probabile che l'alterazione di tale mappatura esponga tutti i tipi di bug sgradevoli. Avvertenze a parte, ecco cosa devi fare:

In Firefox, ExternalHelperAppService viene utilizzato per determinare il tipo di URI file:. Si noti che uno dei passaggi consiste nell'utilizzare un elenco di estensioni hard-coded per digitare mapping, che molto probabilmente ha il mapping .txt su text/plain.

In IE i mapping dei tipi di file provengono dalle impostazioni del sistema operativo. Varia un po 'a seconda della versione di Windows con cui si ha a che fare, ma solitamente nella stessa parte generale delle impostazioni in cui si sceglie il programma da eseguire per ogni estensione è possibile anche impostare un tipo mime per ogni estensione. (Questo è anche il posto in cui Firefox appare nel passaggio "Il sistema operativo è richiesto per un tipo MIME" menzionato nella pagina che ho collegato sopra, BTW.) Se hai inviato il tipo MIME per .txt a text/html dovresti ottenere il tuo comportamento volere.

0

Sono le intestazioni HTTP che racconta il browser quale tipo di dati è trasferendo quindi bisogna modificare le impostazioni del tuo web server

+0

Quindi ... quando si rinomina il file, cosa aggiunge l'estensione .html a un file di testo regulat per essere letto e trattato come un documento html? – volvox

+0

Indica al server Web quale tipo di contenuto è il particolare file. – Joe

+0

@volvox: la maggior parte dei server Web (incluso IIS) dispone di associazioni di file che convertono le estensioni di file in tipi MIME (.txt => text/plain, .html => text/html, ecc.): I browser utilizzano questo tipo di informazioni per determinare come per interpretare il contenuto – rpetrich

-3

Salvare il testo con i relativi codici htm in WORDPAD come OPEN Documento di testo. Utilizzare nel nome del file l'estensione .htm. Questo ha funzionato per me.

+0

-1 l'OP ha esplicitamente menzionato che non vogliono rinominare i file –

-6

Soluzione molto semplice al tuo problema.

Durante il salvataggio del documento, salvarlo con un'estensione .html o .htm.

Ad esempio, se è necessario salvare un file con il nome corretto, invece di digitare solo "successo", digitare "success.html" o "success.htm".

+0

Qualcuno può dirmi perché ho questo -2? –

+4

leggere la domanda correttamente la prossima volta. L'OP ha menzionato il fatto che al momento la rinomina dei file è l'unico modo, ma voleva qualcos'altro, una soluzione migliore. Quindi dire all'OP di rinominare i file probabilmente non è una buona risposta. E dovresti essere felice che sia solo -2. – benka

Problemi correlati