blob: 69a92f8ab91f7947112626cbc2598168438ead05 [file] [log] [blame]
Roderick Sheeter437bbad2013-11-19 14:32:56 -08001// Copyright 2013 Google Inc. All Rights Reserved.
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7// http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14//
15// File IO helpers
16
Zoltan Szabadka494c85c2014-03-20 14:35:41 +010017#ifndef WOFF2_FILE_H_
18#define WOFF2_FILE_H_
Roderick Sheeter437bbad2013-11-19 14:32:56 -080019
20#include <fstream>
21#include <iterator>
22
23namespace woff2 {
24
25inline std::string GetFileContent(std::string filename) {
26 std::ifstream ifs(filename.c_str(), std::ios::binary);
27 return std::string(
28 std::istreambuf_iterator<char>(ifs.rdbuf()),
29 std::istreambuf_iterator<char>());
30}
31
32inline void SetFileContents(std::string filename, std::string content) {
33 std::ofstream ofs(filename.c_str(), std::ios::binary);
34 std::copy(content.begin(),
35 content.end(),
36 std::ostream_iterator<char>(ofs));
37}
38
39} // namespace woff2
Zoltan Szabadka494c85c2014-03-20 14:35:41 +010040#endif // WOFF2_FILE_H_