所以我正在读取包含以下内容的输入文件:
theEvents = new ArrayList<Event>();
requestQueue = Volley.newRequestQueue(getActivity());
JsonObjectRequest jsonObjectRequest = new JsonObjectRequest
(Request.Method.GET, urlService, null, new Response.Listener<JSONObject>() {
@Override
public void onResponse(JSONObject response) {
try {
id = response.getString(Config.KEY_ID); // response is now the actual object called "result" from your JSON data.
// do something with the ID
}
.........etc
我需要一次使用二进制一个字节来读取它,以便稍后我正在做的事情。要做到这一点,我使用=SUMPRODUCT(Test!F2:F12,Rates!C2:C12)
来读取它,然后将其存储到char中。除了它读入的最后一个char之外,它似乎正常工作。它正在读取的向量包含:
lololololololol
我不太清楚最后一个值是什么,但它完全抛弃了我的最终输出。所以我的问题是,是否有get()
从我的文本文档中读取值或字节的原因不存在?或者是在阅读我不知道的东西?
代码:
lololololololol
�
答案 0 :(得分:3)
正在阅读EOF
(end of file)字符。您需要在之后检查以避免将其插入向量:
while(temp = istr.get(), istr.good()) // comma operator
input.push_back(temp);
或者您可以使用第二个std::istream_base::get
overload并让istr
隐式转换为bool
:
while(istr.get(temp))
input.push_back(temp);
或尝试more advanced approaches。 operator>>
和std::getline
也适用于此类输入。