回答編集履歴

1

コード追記

2020/09/24 11:27

投稿

SHOMI
SHOMI

スコア4079

test CHANGED
@@ -49,3 +49,53 @@
49
49
  }
50
50
 
51
51
  ```
52
+
53
+
54
+
55
+ ---
56
+
57
+ `文字セット`の設定がUNICODE時に`stringstream`が文字化けしていてもいいなら以下でも通りますが…
58
+
59
+ ```C++
60
+
61
+ #include <atlstr.h>
62
+
63
+ #include <sstream>
64
+
65
+ #include <iostream>
66
+
67
+
68
+
69
+ int main()
70
+
71
+ {
72
+
73
+ CString w_str("文字列");
74
+
75
+ CString r_str;
76
+
77
+ int size = (w_str.GetLength() + 1) * sizeof(TCHAR);
78
+
79
+
80
+
81
+ std::stringstream s;
82
+
83
+ std::ostream& os(s);
84
+
85
+ os.write((const char*)w_str.GetString(), size);
86
+
87
+
88
+
89
+ std::istream& is(s);
90
+
91
+ is.read((char*)r_str.GetBuffer(size), size);
92
+
93
+ r_str.ReleaseBuffer();
94
+
95
+
96
+
97
+ return 0;
98
+
99
+ }
100
+
101
+ ```