ラベル 文字列操作 の投稿を表示しています。 すべての投稿を表示
ラベル 文字列操作 の投稿を表示しています。 すべての投稿を表示

2018年12月29日土曜日

UTF-8文字列をUNICODE化し、絵文字判別

UTF-8で指定された文字列をUNICODE化し(32bit)、絵文字かどうかを判定する例題です。

絵文字かどうかの議論は色々あるかと思いますが、twemoji 内に格納されている絵文字を基準としています。
→ emoji-png フォルダに png として保存し、ファイルを検索してチェック

絵文字かどうかを判定した後は元のUTF-8に戻し、標準出力へ出力しています。
絵文字に対応していないフォントを用いているUI等では、絵文字が表示されない場合がありますので、絵文字の部分は twemoji 内の png で置き換えて表示したりすることができます。 実行結果

2013年11月26日火曜日

設定ファイルの入出力

適当な区切り文字(「:」、「=」 etc.)で区切られて保存されている設定ファイルを入出力する例題です。

設定ファイルから読み込まれた値は全てメモリ内に動的に確保され、設定の変更後(キーによる検索、更新、追加)、元の設定ファイルに書き出すことができる例題となっています。

区切り文字の値(例題では「 = 」)を適宜変更して利用できます。

設定ファイルは値を書き込んだものを予め準備していますが、無い場合にはファイルを作成し、SetSettings にて設定した値が SaveSettings にてファイルに書き込まれます。 実行結果

2011年9月25日日曜日

コンソールからの安全な数値入力

コンソール入力からの文字列を確認し、atoi や atof 関数により安全に数値へと変換する例です。 実行結果

関数ポインタを利用した文字列の入出力

関数ポインタを利用した文字列の入出力の例です。

関数ポインタ(int (*func_p)(char **, int *);)により、文字列を入力する関数、出力する関数を交互に呼び出し、文字列の入出力を行なっています。

実行結果

2011年9月19日月曜日

html2txt: HTML ファイルからテキスト文章の抽出

html2txt: HTML ファイルからテキスト文章を抽出する例です。

html2txt により抽出されたテキストの例:

html2txt コマンドに与えられる引数(#define USE_LIB 0 としてビルド):

USAGE: html2txt htmlfile [-disp] [-link] [-out textfile] [-url baseurl]
-disp: ファイルに出力される HTML を標準出力(stdout)へ出力するように変更
-link: リンク部のタグを残したまま出力
-out textfile: 出力するファイル名を .txt 等から指定のファイル名に変更
-url baseurl: リンクを出力する際、ベースとなる URL を設定することにより相対参照を絶対参照に変更

ソース等をまとめたもの:DL(html2txt.zip)

html2txt.cpp(HTML 記号をテキストに変換する処理の部分が記号として変換されて表示されているため、上の html2txt.zip に含まれるソースをDLしてご利用ください)

html2txt.h 実行結果

2011年9月18日日曜日

cpp2html:C言語ソースファイルからHTMLファイルへの変換

cpp2html:C言語ソースファイルからHTMLファイルへの変換を実装する例です。

以下の例では、ソースファイルからHTMLファイルに変換するクラスを cpp2html.cpp/cpp2html.h に記述し、そのクラスを利用し対応するソースファイル(.c,.cc,.cpp,.h,.hh,.hpp)を一括してHTMLに変換するためのコマンドラインアプリを作成する例(src2html.cpp)を掲載しています。

src2html により変換された HTML の例:cpp2html.cpp / cpp2html.h / src2html.cpp

cpp2html コマンドに与えられる引数(#define USE_LIB 0 としてビルド):

USAGE: cpp2html srcfile [-disp] [-plain] [-out htmlfile] [-t n] [-no]
-disp: ファイルに出力される HTML を標準出力(stdout)へ出力するように変更
-plain: HTML ヘッダを省き、ソース部分のみ HTML 化したコードを出力
-t n: タブを空白に置き換える際の空白数を n で与える
-out htmlfile: 出力するファイル名を _cpp.html 等から指定のファイル名に変更

ソース等をまとめたもの:DL(cpp2html.zip)

cpp2html.cpp

cpp2html.h

src2html.cpp 実行結果

Makefile

2011年9月2日金曜日

給与計算

労働時間を入力することにより、給与を計算する例題です。
労働時間と時給の計算例
・時間に0を入れるまで繰り返し計算する。
・時間は15分単位で入力する(3時間15の場合:3.25、5時間30の場合5.5)
・時間が8時間を越えた場合は超えた時間の時給を10%割り増しとする
・時間の表示は小数点以下2桁とする。
*時間の計算方法例:
時間が8時間以下の場合:
 給料=時間×時給
時間が8時間を越えた場合:
給料1=8×時給 給料2=(時間-8)×時給×1.1
 給料=給料1+給料2
実行結果

コマンドラインを利用した単純なメニューアプリ

コマンドラインを利用した単純なメニューアプリです。

番号を入力することにより、文字列の格納、削除、表示を行います。

それぞれの操作により、ファイル内に保存されている文字列の操作を行います。

実行結果