FineKernelToolKit  3.1.0
UniCode_CLI.h
[詳解]
1 // UniCode_CLI.h
2 
3 #pragma once
4 
5 #include <FK/UniCode.h>
6 #include "Base_CLI.h"
7 
8 namespace FK_CLI
9 {
11  public enum class fk_StringCode {
12  UTF16,
13  UTF8,
14  JIS,
15  SJIS,
16  EUC
17  };
18 
20 
31  public ref class fk_UniChar : fk_BaseObject {
32  internal:
33  ::fk_UniChar * GetP(void);
34 
35  public:
36 #ifndef FK_DOXYGEN_USER_PROCESS
37  fk_UniChar(bool argNewFlg);
38 #endif
39 
43  fk_UniChar();
44 
46 
52  fk_UniChar(int code);
53 
55  ~fk_UniChar();
56 
58  !fk_UniChar();
59 
61 
65  property int Code {
66  int get();
67  void set(int);
68  }
69 
71 
77  property char Ascii {
78  char get();
79  }
80 
82 
88  void SetBuffer(unsigned char c1, unsigned char c2);
89 
91 
97  bool IsAscii(void);
98  };
99 
101 
114  public ref class fk_UniStr : fk_BaseObject {
115 
116  internal:
117  ::fk_UniStr * GetP(void);
119 
120  public:
121 #ifndef FK_DOXYGEN_USER_PROCESS
122  fk_UniStr(bool argNewFlg);
123 #endif
124 
126  fk_UniStr();
127 
129  ~fk_UniStr();
130 
132  !fk_UniStr();
133 
135 
138  void Clear(void);
139 
141 
147  int GetLength(void);
148 
150 
171  bool GetLine(fk_UniStr^ str);
172 
174 
182  void MarkClear(void);
183 
185 
199  bool ReadFile(String^ fileName, fk_StringCode code);
200 
202 
215  bool ReadFile(String^ fileName);
216 
218 
226  void CopyStr(fk_UniStr^ str);
227 
229 
247  void Convert(String^ str, fk_StringCode code);
248 
250 
265  void Convert(String^ str);
266 
268 
277  int GetCode(int num);
278 
280 
296  int Find(int start, int code);
297 
299 
317  int Find(int start, unsigned char c1, unsigned char c2);
318 
320 
323  void PopBack(void);
324 
326 
333  void PushBack(fk_UniChar^ c);
334 
336 
341  void PushBack(int code);
342  };
343 }
344 
345 /****************************************************************************
346  *
347  * Copyright (c) 1999-2016, Fine Kernel Project, All rights reserved.
348  *
349  * Redistribution and use in source and binary forms,
350  * with or without modification, are permitted provided that the
351  * following conditions are met:
352  *
353  * - Redistributions of source code must retain the above
354  * copyright notice, this list of conditions and the
355  * following disclaimer.
356  *
357  * - Redistributions in binary form must reproduce the above
358  * copyright notice, this list of conditions and the
359  * following disclaimer in the documentation and/or
360  * other materials provided with the distribution.
361  *
362  * - Neither the name of the copyright holders nor the names
363  * of its contributors may be used to endorse or promote
364  * products derived from this software without specific
365  * prior written permission.
366  *
367  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
368  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
369  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
370  * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
371  * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
372  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
373  * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
374  * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
375  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
376  * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
377  * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
378  * POSSIBILITY OF SUCH DAMAGE.
379  *
380  ****************************************************************************/
381 /****************************************************************************
382  *
383  * Copyright (c) 1999-2016, Fine Kernel Project, All rights reserved.
384  *
385  * 本ソフトウェアおよびソースコードのライセンスは、基本的に
386  * 「修正 BSD ライセンス」に従います。以下にその詳細を記します。
387  *
388  * ソースコード形式かバイナリ形式か、変更するかしないかを問わず、
389  * 以下の条件を満たす場合に限り、再頒布および使用が許可されます。
390  *
391  * - ソースコードを再頒布する場合、上記の著作権表示、本条件一覧、
392  * および下記免責条項を含めること。
393  *
394  * - バイナリ形式で再頒布する場合、頒布物に付属のドキュメント等の
395  * 資料に、上記の著作権表示、本条件一覧、および下記免責条項を
396  * 含めること。
397  *
398  * - 書面による特別の許可なしに、本ソフトウェアから派生した製品の
399  * 宣伝または販売促進に、本ソフトウェアの著作権者の名前または
400  * コントリビューターの名前を使用してはならない。
401  *
402  * 本ソフトウェアは、著作権者およびコントリビューターによって「現
403  * 状のまま」提供されており、明示黙示を問わず、商業的な使用可能性、
404  * および特定の目的に対する適合性に関す暗黙の保証も含め、またそれ
405  * に限定されない、いかなる保証もないものとします。著作権者もコン
406  * トリビューターも、事由のいかんを問わず、損害発生の原因いかんを
407  * 問わず、かつ責任の根拠が契約であるか厳格責任であるか(過失その
408  * 他の)不法行為であるかを問わず、仮にそのような損害が発生する可
409  * 能性を知らされていたとしても、本ソフトウェアの使用によって発生
410  * した(代替品または代用サービスの調達、使用の喪失、データの喪失、
411  * 利益の喪失、業務の中断も含め、またそれに限定されない)直接損害、
412  * 間接損害、偶発的な損害、特別損害、懲罰的損害、または結果損害に
413  * ついて、一切責任を負わないものとします。
414  *
415  ****************************************************************************/
int Code
文字コードプロパティ
Definition: UniCode_CLI.h:65
bool ReadFile(String^ fileName, fk_StringCode code)
ファイル全体取得メソッド1
FK の各クラスの基盤となる基本クラス
Definition: Base_CLI.h:105
char Ascii
ASCII文字取得プロパティ
Definition: UniCode_CLI.h:77
fk_UniChar()
コンストラクタ1
fk_UniStr()
コンストラクタ
void PushBack(fk_UniChar^ c)
後部文字追加メソッド1
void CopyStr(fk_UniStr^ str)
文字列コピーメソッド
int GetLength(void)
文字列長参照メソッド
void Convert(String^ str, fk_StringCode code)
文字列生成メソッド1
void PopBack(void)
最後尾文字削除メソッド
fk_StringCode
日本語文字コードを表す列挙型
Definition: UniCode_CLI.h:11
void SetBuffer(unsigned char c1, unsigned char c2)
文字コード設定メソッド1
Shift-JIS (SJISコード)
bool IsAscii(void)
ASCII文字判定メソッド
void Clear(void)
初期化メソッド
void MarkClear(void)
マーク初期化メソッド
文字列板に表示する文字列を制御するクラス
Definition: UniCode_CLI.h:114
int Find(int start, int code)
文字検索メソッド1
~fk_UniStr()
デストラクタ
ISO-2022-JIS (JISコード)
Unicode の文字を表すクラス
Definition: UniCode_CLI.h:31
bool GetLine(fk_UniStr^ str)
一行分取得メソッド
~fk_UniChar()
デストラクタ
Definition: AppWindow_CLI.h:11