OLD | NEW |
(Empty) | |
| 1 /* |
| 2 ********************************************************************** |
| 3 * Copyright (C) 2001-2010 International Business Machines |
| 4 * Corporation and others. All Rights Reserved. |
| 5 ********************************************************************** |
| 6 * FILE NAME : ustream.h |
| 7 * |
| 8 * Modification History: |
| 9 * |
| 10 * Date Name Description |
| 11 * 06/25/2001 grhoten Move iostream from unistr.h |
| 12 ****************************************************************************** |
| 13 */ |
| 14 |
| 15 #ifndef USTREAM_H |
| 16 #define USTREAM_H |
| 17 |
| 18 #include "unicode/unistr.h" |
| 19 |
| 20 /** |
| 21 * \file |
| 22 * \brief C++ API: Unicode iostream like API |
| 23 * |
| 24 * At this time, this API is very limited. It contains |
| 25 * operator<< and operator>> for UnicodeString manipulation with the |
| 26 * C++ I/O stream API. |
| 27 */ |
| 28 |
| 29 #if U_IOSTREAM_SOURCE >= 199711 |
| 30 #if (__GNUC__ == 2) |
| 31 #include <iostream> |
| 32 #else |
| 33 #include <istream> |
| 34 #include <ostream> |
| 35 #endif |
| 36 |
| 37 U_NAMESPACE_BEGIN |
| 38 |
| 39 /** |
| 40 * Write the contents of a UnicodeString to a C++ ostream. This functions writes |
| 41 * the characters in a UnicodeString to an ostream. The UChars in the |
| 42 * UnicodeString are converted to the char based ostream with the default |
| 43 * converter. |
| 44 * @stable 3.0 |
| 45 */ |
| 46 U_IO_API std::ostream & U_EXPORT2 operator<<(std::ostream& stream, const Unicode
String& s); |
| 47 |
| 48 /** |
| 49 * Write the contents from a C++ istream to a UnicodeString. The UChars in the |
| 50 * UnicodeString are converted from the char based istream with the default |
| 51 * converter. |
| 52 * @stable 3.0 |
| 53 */ |
| 54 U_IO_API std::istream & U_EXPORT2 operator>>(std::istream& stream, UnicodeString
& s); |
| 55 U_NAMESPACE_END |
| 56 |
| 57 #elif U_IOSTREAM_SOURCE >= 198506 |
| 58 /* <istream.h> and <ostream.h> don't exist. */ |
| 59 #include <iostream.h> |
| 60 |
| 61 U_NAMESPACE_BEGIN |
| 62 U_IO_API ostream & U_EXPORT2 operator<<(ostream& stream, const UnicodeString& s)
; |
| 63 |
| 64 U_IO_API istream & U_EXPORT2 operator>>(istream& stream, UnicodeString& s); |
| 65 U_NAMESPACE_END |
| 66 |
| 67 #endif |
| 68 |
| 69 /* No operator for UChar because it can conflict with wchar_t */ |
| 70 |
| 71 #endif |
OLD | NEW |