4D v14.3Mac to ISO |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v14.3
Mac to ISO
|
Mac to ISO ( text ) -> 戻り値 | ||||||||
引数 | 型 | 説明 | ||||||
text | 文字 |
![]() |
Mac OS ASCIIマップで表されたテキスト | |||||
戻り値 | 文字 |
![]() |
標準的なWeb文字セットで表されたテキスト | |||||
データベースがASCII互換モードで実行された場合のみ、このコマンドは機能します。Unicodeモードでは、コマンドは何もしません(textの文字列は修正なしで返されます) 。その為、4Dのバージョン11以降、このコマンドはあまり用いられていませんので、その使用はもはやお勧めできません。CONVERT FROM TEXTやConvert to textコマンドを用いて文字列を変換することをお勧めします。
Mac to ISOコマンドは、Web文字テーブルを使用して表されたtextを、4Dアプリケーションの環境設定のWeb/オプションページのスタンダードセットメニューで指定された文字セットで返します。
通常は、このコマンドを使用する必要はありません。
このコマンドには、Mac OS ASCIIマップを使用して表したテキスト引数が必要です。
4Dは、Webブラウザとの間で送受信する文字を変換します。その結果、操作するテキスト値は、Web接続プロセスの内部では、常にMac OS ASCIIマップを使用して表されます。
通常、Windows上で実行している場合には、このコマンドを使用してASCIIコードを変換する必要はありません。ASCII互換モード(非 Unicode) で、4DとWindowsの間でテキストをコピーする、または貼り付けたりする場合や、データを読み込む、または書き出す場合には、4Dは自動的にこのよ うな変換を実行します。ただしSEND PACKETやRECEIVE PACKETコマンド等の、ディスクの読み取りコマンドや書き込みコマンドを使用する場合には、ASCII変換を明示的に実行する必要があります。
4D内では、まだ別のASCIIマップに変換していないすべてのテキスト値、フィールド、または変数はMacintosh上およびWindows上の双方ともにMac OSエンコードです。詳細については、付録のASCIIコードを参照してください。
Windowsでは、この場合には、出力フィルタASCIIマップを使用して文字をフィルタしないでおく必要があります。
したがって、プラットフォームが何であっても、ISO Latin-1を使用してディスク上にHTMLドキュメントを作成したい場合には、Mac to ISOを使用して対象となるテキストを変換するだけですみます。これがMac to ISOコマンドの主要な目的です。
以下のコードの行では、vtSomeTextに格納されている(仮想の)Mac OSでコード化されたテキストを、ISO Latin-1でデコードされたテキストに変換しています。
vtSomeText:=Mac to ISO(vtSomeText)
4D Web Serverアプリケーションの開発中にHTMLドキュメントを作成し、後でWEB SEND FILEコマンドを使用してイントラネットまたはインターネット経由で送信しようとしています。これらのHTMLドキュメントの一部は他のドキュメントに参照やリンクを持っています。
以下のプロジェクトメソッドでは、引数として受信したWindowsからのHTMLベースのパス名やMacintoshのパス名を求めています。
` HTML Pathnameプロジェクトメソッド
` HTML Pathname ( Text ) -> Text
` HTML Pathname ( Native File Manager Pathname ) -> HTML HTMLパス名
C_TEXT($0;$1)
C_LONGINT($vlChar;$vlAscii)
C_STRING(31;$vsChar)
$0:=""
If(On Windows)
$1:=Replace string($1;"\";"/")
Else
$1:=Replace string($1;":";"/")
End if
$1:=Mac to ISO($1)
For($vlChar;1;Length($1))
$vlAscii:=Character code($1[[$vlChar]])
Case of
:($vlAscii>=127)
$vsChar:="%"+Substring(String($vlAscii;"&$");2)
:(Position(Char($vlAscii);":<>&%= "+Char(34))>0)
$vsChar:="%"+Substring(String($vlAscii;"&$");2)
Else
$vsChar:=Char($vlAscii)
End case
$0:=$0+$vsChar
End for
注: On Windowsプロジェクトメソッドはシステムドキュメントの章の中で示されています。
On Windowプロジェクトメソッドをデータベースに作成した後、特定のディレクトリにあるドキュメントへのFTPリンクのリストを追加したい場合には、以下のように記述できます。
`On Startupデータベースメソッド内でインタープロセス変数を設定する
<>vsFTPURL:="ftp://123.4.56.78/Spiders/"
<>vsFTPDirectory:="APS500:Spiders:" `これはMac OSファイル管理のパス名
` ...
` ...
ARRAY TEXT($asDocuments;0)
DOCUMENT LIST(...;$asDocuments)
$vlNbDocuments:=Size of array($asDocuments)
jsHandler:=...
For($vlDocument;1;$vlNbDocuments)
vtHTMLCode:=vtHTMLCode+"<p><a href=\""<>vsFTPURL+HTML Pathname(Substring($1+$asDocuments{$vlDocument};
Length(<>vsFTPDirectory)+1))+"\""+jsHandler+"> "+$asDocuments{$vlDocument}+"</a></p>\r"
End for
プロダクト: 4D
テーマ: 文字列
番号:
519
変更: 4D v11 SQL
ASCIIコード
ISO to Mac
SEND PACKET
USE CHARACTER SET
WEB SEND FILE
ランゲージリファレンス ( 4D v14 R3)
ランゲージリファレンス ( 4D v14 R2)
ランゲージリファレンス ( 4D v13.5)
ランゲージリファレンス ( 4D v14.3)
ランゲージリファレンス ( 4D v14 R4)
Inherited from : Mac to ISO ( 4D v12.4)