| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 // This file contains utility functions for dealing with the local | 5 // This file contains utility functions for dealing with the local |
| 6 // filesystem. | 6 // filesystem. |
| 7 | 7 |
| 8 #ifndef BASE_FILE_UTIL_H_ | 8 #ifndef BASE_FILE_UTIL_H_ |
| 9 #define BASE_FILE_UTIL_H_ | 9 #define BASE_FILE_UTIL_H_ |
| 10 | 10 |
| (...skipping 114 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 125 // Returns true if the contents of the two files given are equal, false | 125 // Returns true if the contents of the two files given are equal, false |
| 126 // otherwise. If either file can't be read, returns false. | 126 // otherwise. If either file can't be read, returns false. |
| 127 BASE_EXPORT bool ContentsEqual(const FilePath& filename1, | 127 BASE_EXPORT bool ContentsEqual(const FilePath& filename1, |
| 128 const FilePath& filename2); | 128 const FilePath& filename2); |
| 129 | 129 |
| 130 // Returns true if the contents of the two text files given are equal, false | 130 // Returns true if the contents of the two text files given are equal, false |
| 131 // otherwise. This routine treats "\r\n" and "\n" as equivalent. | 131 // otherwise. This routine treats "\r\n" and "\n" as equivalent. |
| 132 BASE_EXPORT bool TextContentsEqual(const FilePath& filename1, | 132 BASE_EXPORT bool TextContentsEqual(const FilePath& filename1, |
| 133 const FilePath& filename2); | 133 const FilePath& filename2); |
| 134 | 134 |
| 135 // Read the file at |path| into |contents|, returning true on success. |
| 136 // This function fails if the |path| contains path traversal components ('..'). |
| 137 // |contents| may be NULL, in which case this function is useful for its |
| 138 // side effect of priming the disk cache. |
| 139 // Useful for unit tests. |
| 140 BASE_EXPORT bool ReadFileToString(const FilePath& path, std::string* contents); |
| 141 |
| 135 } // namespace base | 142 } // namespace base |
| 136 | 143 |
| 137 // ----------------------------------------------------------------------------- | 144 // ----------------------------------------------------------------------------- |
| 138 | 145 |
| 139 namespace file_util { | 146 namespace file_util { |
| 140 | 147 |
| 141 // Read the file at |path| into |contents|, returning true on success. | |
| 142 // This function fails if the |path| contains path traversal components ('..'). | |
| 143 // |contents| may be NULL, in which case this function is useful for its | |
| 144 // side effect of priming the disk cache. | |
| 145 // Useful for unit tests. | |
| 146 BASE_EXPORT bool ReadFileToString(const base::FilePath& path, | |
| 147 std::string* contents); | |
| 148 | |
| 149 #if defined(OS_POSIX) | 148 #if defined(OS_POSIX) |
| 150 // Read exactly |bytes| bytes from file descriptor |fd|, storing the result | 149 // Read exactly |bytes| bytes from file descriptor |fd|, storing the result |
| 151 // in |buffer|. This function is protected against EINTR and partial reads. | 150 // in |buffer|. This function is protected against EINTR and partial reads. |
| 152 // Returns true iff |bytes| bytes have been successfully read from |fd|. | 151 // Returns true iff |bytes| bytes have been successfully read from |fd|. |
| 153 BASE_EXPORT bool ReadFromFD(int fd, char* buffer, size_t bytes); | 152 BASE_EXPORT bool ReadFromFD(int fd, char* buffer, size_t bytes); |
| 154 | 153 |
| 155 // Creates a symbolic link at |symlink| pointing to |target|. Returns | 154 // Creates a symbolic link at |symlink| pointing to |target|. Returns |
| 156 // false on failure. | 155 // false on failure. |
| 157 BASE_EXPORT bool CreateSymbolicLink(const base::FilePath& target, | 156 BASE_EXPORT bool CreateSymbolicLink(const base::FilePath& target, |
| 158 const base::FilePath& symlink); | 157 const base::FilePath& symlink); |
| (...skipping 296 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 455 // This function simulates Move(), but unlike Move() it works across volumes. | 454 // This function simulates Move(), but unlike Move() it works across volumes. |
| 456 // This function is not transactional. | 455 // This function is not transactional. |
| 457 BASE_EXPORT bool CopyAndDeleteDirectory(const FilePath& from_path, | 456 BASE_EXPORT bool CopyAndDeleteDirectory(const FilePath& from_path, |
| 458 const FilePath& to_path); | 457 const FilePath& to_path); |
| 459 #endif // defined(OS_WIN) | 458 #endif // defined(OS_WIN) |
| 460 | 459 |
| 461 } // namespace internal | 460 } // namespace internal |
| 462 } // namespace base | 461 } // namespace base |
| 463 | 462 |
| 464 #endif // BASE_FILE_UTIL_H_ | 463 #endif // BASE_FILE_UTIL_H_ |
| OLD | NEW |