日時をCTimeで取得し、クリアタイムと合わせて以下のようなフォーマットで記録しています。
999 0000/00/00 00:00:00
その記録は10個記録できるようにしていて、今それをランキング形式で記録させたいと思っています。
考えとしては、記録されたクリアタイムを抜き出し、今クリアしたタイムも含めて早い順にソートして、先頭に順位を付けて書きだそうと思っています。
1. 999 0000/00/00 00:00:00
ランキング形式にする前は、CTimeのFormatがCStringを返すことからReadString/WriteStringで読み書きしていました。
ですが、タイムを抜き出してソートしてなんてことを考えていると、私が慣れ親しんでいるfscanf/fprintfで読み書きしたいと思うようになりました。
CStringをintに変更する方法を知らないのと、intをCStringに変換するには一度char*に入れないとだめだと思っているからです。
まずソートしてそれからCStringに変換してCTimeの日時をつなげて―というのも考えましたが、やはりCStringをchar*に変換あるいはCTime以外の方法で日時を取得してchar*に入れるなんてことができたほうが楽だと思いました。
でも、char*からCStringへの変換は(CString)キャストで行えますが、CStringからchar*への変換方法がわかりません。
Google検索で「CString char」と調べてみると、strcpyで行えるとありました。
ですが、使ってみると
と言われてしまってできませんでした。エラー 1 error C2664: 'strcpy' : 2 番目の引数を 'CString' から 'const char *' に変換できません。(新しい機能 ; ヘルプを参照)
(LPTSTR)(LPCTSTR)でキャストするといいという話もありましたが、それも
と言われてしまってできませんでした。エラー 1 error C2664: 'strcpy' : 2 番目の引数を 'LPTSTR' から 'const char *' に変換できません。(新しい機能 ; ヘルプを参照)
どのようにしたら取得した日時をchar*に入れられるでしょうか?