| 220 | } |
| 221 | |
| 222 | uint64_t ReadStr(std::streambuf& buffer, std::string &dest, uint64_t size) { |
| 223 | std::ostringstream temp; |
| 224 | uint64_t ii; |
| 225 | for (ii = 0; ii < size; ++ii) { |
| 226 | const int input = buffer.sbumpc(); |
| 227 | if (input == '\0') { |
| 228 | ++ii; |
| 229 | break; |
| 230 | } |
| 231 | temp << static_cast<char>(input); |
| 232 | } |
| 233 | // Correct the file position |
| 234 | if (ii < size) { |
| 235 | StepFilePosition(buffer, size - ii); |
| 236 | } |
| 237 | dest = temp.str(); |
| 238 | MdfHelper::Trim(dest); |
| 239 | return size; |
| 240 | } |
| 241 | |
| 242 | uint64_t WriteStr(std::streambuf& buffer , const std::string &source, uint64_t size) { |
| 243 | for (size_t ii = 0; ii < size; ++ii) { |