Dreamweaver wird auf die westliche Codierung zurückgesetzt, nachdem es in UTF8 geändert wurde

2

Ich verwende Dreamweaver CS3 und habe beim Erstellen einer Anwendung vergessen, sicherzustellen, dass die Codierung auf UTF8 eingestellt ist.

Ich habe alle meine Dateien durchgesehen und die Codierung von Westeuropa auf UTF8 geändert. Dies war in Ordnung, bis ich bemerkte, dass SOME-Dateien beim erneuten Öffnen wieder zur westeuropäischen Codierung zurückkehren.

Egal wie oft ich die Codierung zurück ändere (mit Strg + J und Auswahl der Dropdown-Liste in den Seiteneigenschaften) und die Dateien speichere, wird sie beim Öffnen IMMER wieder auf Western zurückgesetzt.

Dies scheint nur bei bestimmten Dateien zu passieren, und einige sind in Ordnung. Ich habe versucht, eine neue Datei in UTF8 zu erstellen und den Inhalt der alten darin zu kopieren. Das Problem besteht weiterhin, und ich denke, dass die Datei möglicherweise ungerade Zeichen enthält, die Dreamweaver veranlassen, die Codierung „intelligent“ zu ändern.

Alle Ideen sind willkommen. Danke vielmals.

Pickledegg
quelle
Dreamweaver "intelligent" ändert alles für Sie. Mit dem Notizblock ist es besser als mit Dreamwaver!
Mike
1
Mike, als Redakteur nicht. Es gibt Gründe, warum ich diese Software im Moment benutze und Ihr Vorschlag hilft in diesem Fall nicht, obwohl er durchaus wahr ist :)
Pickledegg
So ist es ein Kommentar, keine Antwort :)
Mike
Ich vermute, es könnte mit dem Öffnen und Ändern eines anderen Programms zusammenhängen und dabei die UTF-8-Codierung verlieren. Aber ich habe DW wirklich sehr lange nicht mehr verwendet :)
warren

Antworten:

4

Als UTF-8 codierte Dateien benötigen nicht unbedingt einen speziellen Marker (die sogenannte Byte-Order-Marke oder "BOM"), um anzuzeigen, dass sie als solche codiert sind.

Es hängt von Ihren Einstellungen ab, ob Dreamweaver einen solchen Marker hinzufügt oder nicht. Insbesondere bei Nicht-HTML-Dateien wird häufig empfohlen , einen solchen Marker für UTF-8 überhaupt nicht hinzuzufügen. Wie bei einer Stückliste in einer CSS-Datei wird gesagt , dass die anfänglichen Regeln in der Datei in einigen Browsern manchmal fehlschlagen. Und vor Version 6 betrachtet PHP die Stückliste einfach als Ausgabe , was möglicherweise zu Fehlern führen kann , dass die Headerinformationen nicht geändert werden können - die Header wurden bereits gesendet.

Computerprogramme haben einige Optionen, um die Codierung beim Öffnen einer Datei ohne Markierung zu bestimmen: Scannen Sie die ersten hundert Bytes des Dokuments, um zu sehen, was darin enthalten ist, oder vertrauen Sie (wie bei XML- und HTML-Dateien) dem Wert einer Codierung, die als angegeben ist lesbarer Text im Dokument. Und wenn alles fehlschlägt: Verwenden Sie einfach eine Standardeinstellung, wenn die Codierung nicht anderweitig bekannt ist.

Es gibt also ein paar Dinge zu überprüfen:

  1. Wird eine Stückliste für die Dateien verwendet, die Dreamweaver korrekt als UTF-8 erkennt, und für die Dateien, die es als Western erkennt? Öffnen Sie auf einem Mac das Terminal und führen Sie Folgendes aus:

    Datei my-file.html

    ... was etwas ergeben könnte wie:

    my-file.html: UTF-8-Unicode-Text (mit Stückliste) mit CRLF-Zeilenabschluss

    Unter Windows finden Sie den gleichen Befehl in Cygwin . Oder verwenden Sie einen Hex-Editor, um die ersten Bytes anzuzeigen (EF BB BF für eine UTF-8-Stückliste). Oder stellen Sie einen Browser so ein, dass er Western explizit verwendet, und erstellen Sie eine Ansichtsquelle (oder verwenden Sie einen alten Editor, der UTF-8 nicht versteht), um festzustellen, ob die ersten Bytes als lustige Zeichen angezeigt werden, z . Das ist dann Ihre UTF-8-Stückliste.

    (Wenn Sie UTF-16 finden ÿþoder es þÿdann ist. Schlecht, es sei denn, Sie schreiben so etwas wie Chinesisch. In dieser Antwort werden überhaupt keine lustigen Zeichen angezeigt. Lesen Sie dann, wie Sie "Arial Unicode MS" unter Get Dingbats in Firefox 3 verwenden ? )

  2. Geben die Interna der Datei eine Codierung an? Sowie:

    <meta http-equiv = "Inhaltstyp" content = "text / html; charset = UTF-8" /> 

    (In HTML-Dateien sollte der Inhaltstyp vor dem <title>Tag angegeben werden.)

  3. Wenn beide vorhanden sind: stimmen sie überein?

  4. Wenn Dreamweaver glaubt, dass eine Datei nicht UTF-8 ist, spielt es eine Rolle? Also: Gibt es in dieser Datei Sonderzeichen? Eine reine ASCII-Datei ändert sich nicht, wenn sie als UTF-8 gespeichert wird (es sei denn, einer Stückliste ist ein Präfix vorangestellt).

(Beachten Sie, dass Sie vermutlich immer noch mit lokalen Dateien arbeiten. Wenn die Daten tatsächlich von einem Webserver abgerufen werden, gibt es auch den HTTP-Header "Content-Type". Siehe Firefox zeigt dann anstelle der Webseite Müllzeichen an . Sobald Sie Ihre hochgeladen haben Dateien an einen Webserver senden, müssen Sie sicherstellen, dass der Webserver die gleiche Codierung in seinen Content-Type-Headern sendet.)

Arjan
quelle
Gib ihm mehr als 5 Minuten! Ich habe Tage auf eine Antwort auf meine gewartet!
William Hilsum
3

Ich musste mich nur einmal mit einer anderen Kodierung befassen und hatte ähnliche Ergebnisse wie Sie.

Ich glaube, das liegt daran, dass Dreamweaver die Einstellungen einiger Dateien einfach vergisst bzw. nicht erkennt.

Ich habe diese Option geändert und es hat gut funktioniert:

Alt-Text

Bearbeiten> Voreinstellungen> Neues Dokument ... Aktivieren Sie das Kontrollkästchen "Standardkodierung:" / "Beim Öffnen vorhandener Dateien ohne Kodierung verwenden".

William Hilsum
quelle
1

Wählen Sie Ändern> Seiteneigenschaften> Codierung und geben Sie die Codierung an, in die das Dokument konvertiert werden soll

genießen!

Darius Vanan
quelle
1

Keine dieser Antworten ist richtig.

Wenn Sie möchten, dass eine Datei beim Öffnen als UTF-8 geöffnet wird, fügen Sie einfach diese Zeile als zweite oder erste Zeile Ihres Dokuments hinzu:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 

Ich füge diese Zeile als zweite Zeile aller meiner CodeIgniter-Datei-Shards hinzu ... da in den meisten Dateien kein Header-Tag vorhanden ist.

Dies führt dazu, dass Dreamweaver ordnungsgemäß funktioniert: Festlegen eines Standard-Zeichensatzes für die Codierung. Das Einstellungsfenster funktioniert überhaupt nicht.

Jodo
quelle
0

Ich denke, wenn Sie die Stückliste von Utf-8-Dateien auf Dreamweaver entfernen möchten (Erstellen von Dateien), sollten Sie dies tun:

Es hat bei mir funktioniert, versuchen Sie also, das Ergebnis selbst zu sehen


auf dreamweaver:

1º gehe zu den Einstellungen;

2. Klicken Sie im Kategoriemenü auf "Neue Datei" oder "Neues Dokument".

3º Das erste Kontrollkästchen muss aktiviert sein und die Standardkodierung muss utf-8 sein


1. Wechseln Sie zu "C: \ Programme (x86) \ Adobe \ Adobe Dreamweaver CS6".

2. Suche nach Default.php und Default.dwt.php

3. Öffnen Sie den Editor ++ mit Administratorrechten

4º Wählen Sie die beiden Dateien aus

5º Rechtsklick und wählen Sie Bearbeiten mit Notepad ++


im Editor ++:

auf EATCH-Datei dies tun:

1º Klicken Sie in der oberen Leiste auf Codierung

2. Klicken Sie im Untermenü auf "In UTF-8 ohne Stückliste konvertieren".

3º Datei speichern

Schädelschreiber
quelle
-1

Schauen Sie sich vielleicht die Ikone an ...

EDIT: Ich weiß nicht, ob Sie diese Ikone schon ausprobiert haben. Vielleicht waren Sie zu faul, um cygwin zu installieren. Ich habe in diesem Wiki-Link eine Webschnittstelle zu iconv gefunden. Probieren Sie es aus .

Mike
quelle
Wenn vorhanden, muss man auch die Kodierung ändern, wie im Dateiinhalt selbst angegeben, wie<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
Arjan