- 締切済み
strtokで[を使った所、端という字で区切ってしまいす。回避方法はありますか?
strtokで[ ] ,を区切り文字として使用しています。 文字列の読み込みが変なので調べてみたら、端という文字の2バイト目(という表現でいいかわかりませんが)が、[と同じでした。 どうやら、端という文字も区切リ文字として、区切られてしまったようです。 他の日本語でも、同様の現象が起こるんでしょうか? これを回避する方法は、ありますでしょうか?
- みんなの回答 (4)
- 専門家の回答
みんなの回答
- Tacosan
- ベストアンサー率23% (3656/15482)
- yaemon_2006
- ベストアンサー率22% (50/220)
- asuncion
- ベストアンサー率33% (2126/6288)
- akanekor
- ベストアンサー率52% (102/194)
関連するQ&A
- strtokについて
ただ今、C言語の勉強中のヨッピーともうします。 今回質問させていただきたいのは、strtokについてです。 時間を格納している文字列 char time[] = "2007:10:18:22:30:55";//年月日時間 から不要な「:」を抜き出す作業を行っています。 ただ、抜き出して表示するのではなく、別の変数に「:」を抜かした 文字列を代入させたいのです。 char kakunou[16]; //用意した変数に kakunouに"20071018223055" //「:」が入っていない日付を入れたい 自分で調べましたら、strtokやstrtokenという関数が使用したらいいのではないことが分かりました。 どうしたら、不要な文字を抜かして新しい変数に代入できるでしょうか? また、他にいい方法がありましたら、strtokを使用しなくても大丈夫です。 よろしくお願いいたします。
- ベストアンサー
- C・C++・C#
- strtokのしくみについて
よろしくお願い致します。 strtokは以下のように使いますよね。 (と言っても今回初めて使うのですが) 1回目はstrを渡しているので自然ですが、2回目以降はNULLですよね。なのにどうしてstrを続けて分解するということが出来るのでしょうか? うまく説明できませんが、要はstrtokはどういうコードで実現されているのでしょうか? int main(void) { char str[] = "ABCD ef.1234.G"; char *tp; /* スペース.を区切りに文字列を抽出 */ tp = strtok( str, " ." ); puts( tp ); while ( tp != NULL ) { tp = strtok( NULL," ." ); if ( tp != NULL ) puts( tp ); } return 0; }
- 締切済み
- C・C++・C#
- c#でC言語のstrtokに相当する関数は何か
文字列から指定した文字でデータを区切る関数strtokがC言語にはある これに相当するC#の関数は何か 例えばCでは以下のように書く。 char data1[]= " 123 , 456 Yamada " ; char *token ; strtok( data, " ," ) ; /* スペースとカンマを区切りに文字列を抽出 */ token = strtok( str, " ." ); printf(" token chat = %s\n", token ) ; while ( token != NULL ) { token = strtok( NULL," ." ); if ( token != NULL ) printf(" token chat = %s\n", token ) ; } これに相当するc#のSplit関数を使用すると 不要な空白を取り出しているようである 知っている方がおりましたら、教えて下さい。
- ベストアンサー
- C・C++・C#
- 端と中央の間
日本語の表現に苦しんでいます。 鉛筆ほどの長さのあるものに対しその両側の「端」と、「中央」の間の部分をどう表現したら良いでしょうか。 「端と中央の間」とすれば良いのでしょうが、助詞を使わず端的な表現があれば幸いです。 [=======================] 端 中央 ↑ 端 よろしくお願いいたします。
- 締切済み
- 日本語・現代文・国語
- Mac投稿文字化け回避するには?
QNo.2337733 HTMLカテゴリ 「海外掲示板日本語サイトにMacから投稿の文字化けを回避するには?」 http://oshiete.nikkeibp.co.jp/kotaeru.php3?q=2337733 で質問しましたが、回答がないためこちらに質問します。 海外会員制フォーラム日本語サイトにMacから投稿すると????に文字化けするとの質問があります。私はWinユーザですが、WinからはOKです。 サイト :http://www.celticminded.com/ (登録制) 日本語サイトのソース: lang="en" charset=ISO-8859-1 クライアント環境 : Mac OS X 10.4.7 safari 現象 : ・閲覧は問題なく日本語表示される ・エンコード設定や、フォントを「ヒラギノ角ゴ Pro」に変更したところ、入力時の文字化けは直ったが、POST後は文字化けするそうです。 ・ソースを見ると、Winからのmessageは "元・・・"なのに、Macからの2バイト文字は全て "???"になってます。 質問 1. Macからの投稿文字化けを回避する方法を教えてください。 2. そもそも、変な漢字などに化けるのでなく、???に化けるということは、ソースのcharsetを日本語用に変えるしかないのでしょうか? 3. コードISO-8859-1なのに、WinからのPOSTは問題なく日本語表示されるのは何故ですか? 4. 別ユーザからは、Mac(safari)より数ヶ月前までは日本語POSTできたのに、今は文字化けするとの報告もあります。 理由は何が考えられるでしょうか? 他のMacユーザの状況はわかりません。 私はMac未経験です。 宜しくお願いします。
- ベストアンサー
- Mac
- 【c++】文字列の操作
お世話になります。 テキストの操作について質問があります。 getline関数を使用してテキストの1行分を読み込み その文字列をstrtok関数を使用し区切り文字ごとに配列に入れたいと考えています。 ですがgetlineはstd::string型の変数が必要でstrtok関数はchar型しか受け付けないため 関数同士で型が合わず困っています。 何とか型を合わせる方法は無いでしょうか。 以下にソースコードを記載しますのでご指導お願いします。 int main(){ using namespace std; string strText; char chArray[100]; ifstream fs("test.txt"); //パスで指定されたファイルから1行分の文字列を取得する while( getline(fs , strText , '\n') ){ //区切りごと配列に入れたい chArray = strtok(strText , ","); } }
- ベストアンサー
- C・C++・C#
- キーボードのローマ字返還方法
何かの拍子にローマ字で日本語を打っていたのが、キーボードの 各ボタンのひらがなで打ち込むのに変わってしまいました。(きっと 変な所を押して設定が変わってしまった)どうすればキーボードが、前のローマ字入力で文字を日本語で打てるように戻せますか?急いでます。よろしくお願いします。
- ベストアンサー
- Windows XP
- 海外で英語版XPを使用している場合の文字化け回避法
今アメリカで英語版XPを使用しています。 ただ、日本語のサイトに行くと文字化けが発生することがよくあります。 それにくわえ、ソフトのインストール画面も文字化けしてしまいます。 一応日本語が読み取れるようにXPのCDをつかって言語をインストールしたのですが・・・。 完全文字化け回避方法っていうのはありませんか?
- ベストアンサー
- Windows XP
- csvファイルをエクセルで開いたら文字化け
csvファイルを下記設定で開いたら「'(シングルクオテーション)」が文字化けしました。 「'(シングルクオテーション)」以外は文字化けしていません。 どうしたら「'(シングルクオテーション)」が文字化けしないように開けますか? 文字列→日本語(Windows-932) 言語→標準-日本語 区切り→コンマ
- 締切済み
- オフィス系ソフト
- ドライバーをインストールして、IPアドレスを調べてポート設定したが、有線LAN接続で印刷できない。ポートの設定が正しいのか教えてください。また他にも確認すべき設定あれば教えてください。
- Windows10のパソコンでPT-P950NWを有線LAN接続しましたが、印刷ができません。ポート設定に問題があるのか教えてください。
- PT-P950NWを有線LAN接続して印刷しようとしていますが、うまくいきません。ポートの設定が正しくない可能性があります。他にも確認すべき設定があれば教えてください。