1

これは繰り返し発生し、非常に迷惑です。PHP コードをクライアントのサーバーにアップロードします。数週間が経過します。彼らは変更を要求し、いくつかの変更が加えられたのでコードを再ダウンロードしました。しかし、最後に見たときはきちんと整頓されていた私のコードには、余分な空白行が随所に追加されています。コード間に 2 行のスペースがありましたが、今では 3 行になっています。同じ for ループなどの一部だったためにたくさんの行がくっついていたのですが、それらはすべて散らばっており、方法がありません。それらを区別するために。

これを修正するプログラム/ユーティリティはありますか?

4

5 に答える 5

7

ascii ではなくバイナリ モードでアップロードします。Ascii モードは、すべてのラインフィード (UNIX の行末文字) をキャリッジ リターン + ラインフィード (Windows の行末文字) に変更しています。

于 2008-11-23T16:37:29.807 に答える
1

スペースを使用しているときにタブを使用している他のエディターでも問題が発生している可能性があります (スペースを使用していますよね?)。Linux/OSX と Windows の開発者間でソースを共有するときに、同様の問題を見てきました。

于 2008-11-23T16:55:06.293 に答える
1

これは、Windows システムで作成されたテキスト ファイルを Unix/Linux システムで使用されているファイルに変換しようとするシステムが原因であるに違いありません。

Windows はキャリッジ リターンとライン フィードの両方を使用しますが、Unix はライン フィードのみを使用すると思います (またはキャリッジ リターンでしたか)。

私はメインのテキスト エディターとして Ultra Edit を使用しました (Emacs と vi が支配しないというわけではありません :o)。それには、まさにこの種のことのための DOS モードと Unix モードがあります。

于 2008-11-23T16:56:09.113 に答える
1

クライアントがすべてのファイルをバイナリ モードで転送するように強制します。これは、ファイルに Unicode テキストが含まれている場合にも役立ちます。

于 2008-11-23T17:30:00.543 に答える
1

推測では、あなたは Unix / Max システムで開発しているが、顧客は Windows システムで実行している (またはその逆) と言えます。また、ファイルをバイナリモードでアップロード/ダウンロードしていると思います。Windows エディターは、おそらく Unix LF を LF/CR ペアに変換しており、エディターはこれを 2 つの新しい行として扱います。ASCII モードでアップロードおよびダウンロードすると、ファイルは 2 つの形式間で自動的に変換されます。

于 2008-11-23T17:45:24.600 に答える