WEB制作(コーディング)のプロの方に是非お応えいただきたい質問です。


外部スタッフにコーディング作業を依頼し、完成ファイルをフォルダ圧縮(LZH)でメール送信してもらったところ、解凍したファイルをテキストエディタで開くと、ドキュメント宣言の前に、

--------
*********.html TEXTMOS!  ・ $ セZΚセユ内 <
---------
という、明らかに文字化けした記述が入っていました。外部スタッフの方では、入れてないらしく、「圧縮時、もしくはメール送信時に入ったのではないか」と言われ、本人も理由がわからないとういことです。

この記述自体は削除してしまえば問題ないのですが、原因がわからないだけに、他の箇所に影響ないかなど不安です。

・なぜ、このような記述が入ってしまうのか
・入らないようにするにはどうすればよいか

について、ご指南いただけますでしょうか。
お願いいたします。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:
  • 終了:--
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答4件)

id:english No.1

回答回数304ベストアンサー獲得回数0

ポイント30pt

解答そのものではないのですが、今後レスが付きやすく

なるのではと思い、書きます。


textmosでGoogle検索して、一件目に表示される「京の色」に関するサイトのソースの頭に、ご指摘のような文字化けが出現していますね。他の回答者の方がイメージしやすいようにサンプルとなるものを探した結果です。


次に、ご質問の中に、回答にとって重要かもしれない情報が欠けているように思います。

1.ホームページ製作者はWIndowsで制作したのですか? Macではないかと推察します。

2.LZH圧縮したソフトは何ですか?

3.質問者の方のOSは何ですか? Windowsではないですか?

4.解凍に利用されたソフトは何でしょうか?


先にあげたサンプルのHTMLファイルをバイナリー・エディターで見てみると256バイト分文字化けしています。Macバイナリーの部分をWindows版解凍ソフトがMacバイナリーと解釈していないので、このような文字化けが発生しているのではと思います。


そもそも圧縮する際にMacバイナリーが付着しないように圧縮してもらうようにすればいいと思います。

http://www.vector.co.jp/soft/win95/util/se130669.html

マックバイナリ削除 MacBinaryCouteau(Windows95/98/Me / ユーティリティ)

http://e-words.jp/w/E3839EE38383E382AFE38390E382A4E3838AE383AA.h...

マックバイナリとは 【MacBinary】 ─ 意味・解説 : IT用語辞典 e-Words

http://homepage2.nifty.com/sak/w_sak3/doc/syspc/pc_w02.htm

パソコン基礎知識 Windows 編 (その二) Mac バイナリファイル、その他 - SAK Streets

id:ARROW

englishさん、ご指南、ありがとうございます。原因が見えてきました。

ご指摘のとおり、回答をいただくための情報提供が不足しておりました。申し訳ありません。

1.ホームページ製作者はWIndowsで制作したのですか? Macではないかと推察します。

 ⇒Macで制作してもらっています。

2.LZH圧縮したソフトは何ですか?

 ⇒確認中ですが、回答を得ていません。

3.質問者の方のOSは何ですか? Windowsではないですか?

 ⇒Windows XP SP2済です。

4.解凍に利用されたソフトは何でしょうか?

 ⇒Lhaplus にて解凍しました。

サンプルで探していただいた、「京の色」サイトのソースを見ましたが、まさしくこれと同じ記述が書かれていました。

このあと、クライアントチェックを受けて公開作業を行うので、文字化け部分を削除すればそれで問題ないのかどうか、不安を抱えておりました。

他の方の回答も拝見したいと思いますので、このまま継続させていただいます。

(この返信を書いている間に、すでに回答を頂いた方、情報不足のまま回答をお考え頂き、申し訳ありませんでした。)

2005/06/16 16:36:04
id:sight No.2

回答回数69ベストアンサー獲得回数1

ポイント20pt

コーディング作業を行った環境がMacで、受け取られた環境がWindowsやUNIXではないでしょうか?

ご質問の記述は、MACバイナリのような気がします。

先頭128バイトを削除してあげればいいのですが、googleなどで「MACバイナリ」で検索すれば、除去ソフトなどがたくさん見つかると思います。

id:ARROW

ありがとうございます。

ご推測のとおり、作業環境がMacで、受信環境がWindowsのため起きた現象のようです。

ところで、削除すべきは「先頭128バイト」だけでいいのでしょうか。HTMLファイルの最下段</html>の後にも、不要な半角スペースが入ってます。

2005/06/16 16:38:44
id:sight No.3

回答回数69ベストアンサー獲得回数1

ポイント20pt

正確には先頭128バイトだけではヘッダ部だけですので、最後にリソース部を持っているマックバイナリの場合はだめですね。

参考URLにあるようなソフトのうち、ヘッダ、リソースともカットできるものを使うのが手間がないかと。


ただ、結果的にきれいにデータ部だけを取り出せても、納品物を受領側で加工していることに変わりはないですから、理想としてはデータ部のみで納品しなおしてもらえるのが一番だと思います。

(元ファイルにヘッダやリソースがついていて、外部とのやり取りをするためにアプリケーションやミドルウェアがデータフォークを「切り出す」という意味では、Windows側でやるのと変わりませんが、あくまで納品側でやるか受領側でやるかのちがいということで。)

id:ARROW

ありがとうございます。

コーダースタッフに、問い直したところ、Macで制作し、Winで圧縮したことで起きた問題だと思うので、これまでどおり(今まではこのようなことは起きなかったので)の方法でやる、という返事をもらいました。

みなさんからの回答を元に話をして、納得してもらいました。助かりました。

2005/06/19 11:29:43
id:aki73ix No.4

回答回数5224ベストアンサー獲得回数27

ポイント30pt

http://homepage1.nifty.com/glass/tom_neko/web/web_05.html

MacBinaryの規格 (ヘッダ内容と判別法)

Macintoshで作成されたホームページでよく見かける文字列です

検索エンジンで ”TEXTMOSS” ”TEXTMOS”などで検索するとたくさんヒットします


これは、Macintoshがファイルの拡張子ではなく、128バイト単位のリソースフォーク、データフォークというデータ構造をもっているためで、リソースフォークにはそのファイルがどんなファイルなのかという情報が入っています


データフォークもリソースフォークも128バイトの倍数の

サイズを持っており、オリジナルのデータが128の倍数に

満たない部分はNULL文字列の空白で埋められます


元のファイルに戻すためには

まず、先頭の128バイトを削除して、後半のNULL文字列を削除すればよいのですが、稀に、リソースフォークが256バイトだったりするものもあるので、少し消す部分が多くなるものもあります


通常はリソースフォークはつかないのですが、

次の操作をするとリソースフォークがついたファイルになります


正しい操作:

元のファイルをMac用LHAで圧縮


誤った操作:

元のファイルをWindowsに転送してWindowsのLHAで圧縮


Macバイナリをはずすツールはいくつかあるのでこちらではずすこともできます


HTMLなどのテキストファイルであれば、メモ帳などで削除してもかまいませんが、バイナリファイルの場合は手動で削除すると壊れてしまうことがあるので、ツールを使った方がよいです


http://www.vector.co.jp/soft/win95/util/se130669.html

http://www.vector.co.jp/soft/win95/util/se045732.html

id:ARROW

ありがとうございます。ご指南のとおり、これからは(これまでどおり)、

正しい操作:

元のファイルをMac用LHAで圧縮

で、データを送ってもらうことにしました。

今回の原因は、

誤った操作:

元のファイルをWindowsに転送してWindowsのLHAで圧縮

ということが、スタッフ側からも報告がありましたので。

今回のファイルは、ヘッダ部分とフッタ部分の不要記述(や半角スペース)を削除して対応しましたが、みなさんに教えていただいたツールもDLしておき、今後に備えたいと思います。

みなさん、ありがとうございました。

2005/06/19 11:32:58

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません