Mercurial > hg > orthanc
comparison OrthancServer/FromDcmtkBridge.cpp @ 107:3b45473c0a73
replace boost::locale with iconv for debian
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Thu, 04 Oct 2012 11:22:20 +0200 |
parents | 332fec038d52 |
children | e759f777cb72 |
comparison
equal
deleted
inserted
replaced
106:332fec038d52 | 107:3b45473c0a73 |
---|---|
22 #endif | 22 #endif |
23 | 23 |
24 #include "FromDcmtkBridge.h" | 24 #include "FromDcmtkBridge.h" |
25 | 25 |
26 #include "ToDcmtkBridge.h" | 26 #include "ToDcmtkBridge.h" |
27 #include "../Core/Toolbox.h" | |
27 #include "../Core/OrthancException.h" | 28 #include "../Core/OrthancException.h" |
28 #include "../Core/PngWriter.h" | 29 #include "../Core/PngWriter.h" |
29 #include "../Core/DicomFormat/DicomString.h" | 30 #include "../Core/DicomFormat/DicomString.h" |
30 #include "../Core/DicomFormat/DicomNullValue.h" | 31 #include "../Core/DicomFormat/DicomNullValue.h" |
31 #include "../Core/DicomFormat/DicomIntegerPixelAccessor.h" | 32 #include "../Core/DicomFormat/DicomIntegerPixelAccessor.h" |
32 | 33 |
33 #include <limits> | 34 #include <limits> |
34 | 35 |
35 #include <boost/locale.hpp> | |
36 #include <boost/lexical_cast.hpp> | 36 #include <boost/lexical_cast.hpp> |
37 | 37 |
38 #include <dcmtk/dcmdata/dcdicent.h> | 38 #include <dcmtk/dcmdata/dcdicent.h> |
39 #include <dcmtk/dcmdata/dcdict.h> | 39 #include <dcmtk/dcmdata/dcdict.h> |
40 #include <dcmtk/dcmdata/dcelem.h> | 40 #include <dcmtk/dcmdata/dcelem.h> |
86 char *c; | 86 char *c; |
87 if (element.getString(c).good() && | 87 if (element.getString(c).good() && |
88 c != NULL) | 88 c != NULL) |
89 { | 89 { |
90 std::string s(c); | 90 std::string s(c); |
91 std::string utf8; | 91 std::string utf8 = Toolbox::ConvertToUtf8(s, "ISO-8859-1"); // TODO Parameter? |
92 try | |
93 { | |
94 utf8 = boost::locale::conv::to_utf<char>(s, "ISO-8859-1"); // TODO Parameter? | |
95 } | |
96 catch (std::runtime_error&) | |
97 { | |
98 // Bad input string or bad encoding | |
99 utf8 = s; | |
100 } | |
101 | |
102 return new DicomString(utf8); | 92 return new DicomString(utf8); |
103 } | 93 } |
104 else | 94 else |
105 { | 95 { |
106 return new DicomNullValue; | 96 return new DicomNullValue; |