Tag: iconv

从US-ASCII强制编码为UTF-8(iconv)

我试图从US-ASCII到UTF-8的一堆文件转码。 为此,我使用iconv: iconv -f US-ASCII -t UTF-8 file.php > file-utf8.php 事情是我的原始文件是US-ASCII编码,这使得转换不会发生。 显然这是因为ASCII是UTF-8的一个子集… http://www.linuxquestions.org/questions/linux-software-2/iconv-us-ascii-to-utf-8-or-iso-8859-15-a-705054/ 并引用: 除非引入非ascii字符,否则不需要显示文本文件 真正。 如果我在文件中引入一个非ASCII字符并保存,那么在Eclipse中,文件编码(字符集)将切换为UTF-8。 就我而言,我想强制iconv将文件转码为UTF-8 。 是否有非ASCII字符。 注意:原因是我的PHP代码(非ASCII文件…)正在处理一些非ASCIIstring,这会导致string不能很好地解释(法语): Ilétait une fois … l'hommeséréanimée mythique d'Albert 巴里尔(Procidis),1岁 … 编辑 US-ASCII – 是 UTF-8一个子集(参见下面的Ned的答案 ) 这意味着US-ASCII文件实际上是用UTF-8编码的 我的问题来自其他地方

如何以UTF-8格式编写文件?

我有一堆文件不是UTF-8编码,我正在将网站转换为UTF-8编码。 我正在使用简单的脚本来存储我想要保存在utf-8中的文件,但这些文件被保存在旧的编码中: header('Content-type: text/html; charset=utf-8'); mb_internal_encoding('UTF-8'); $fpath="folder"; $d=dir($fpath); while (False !== ($a = $d->read())) { if ($a != '.' and $a != '..') { $npath=$fpath.'/'.$a; $data=file_get_contents($npath); file_put_contents('tempfolder/'.$a, $data); } } 如何以UTF-8编码保存文件?

如何从PHPstring中的字符中删除重音符号?

我试图删除PHPstring中的重音符号作为使string在URL中可用的第一步。 我使用下面的代码: $input = "Fóø Bår"; setlocale(LC_ALL, "en_US.utf8"); $output = iconv("utf-8", "ascii//TRANSLIT", $input); print($output); 我期望的输出将是这样的: F'oo Bar 但是,而不是重音字符音译,他们被replace为问号: F?? B?r 我可以在网上find的一切都表明,设置语言环境将解决这个问题,但是我已经在做这个。 我已经检查了以下细节: 我所设置的语言环境受服务器支持(包含在由locale -a生成的列表中) 服务器的iconv版本(包含在由iconv -l生成的列表中)支持源和目标编码(UTF-8和ASCII) inputstring是UTF-8编码(使用PHP的mb_check_encoding函数validation,正如mercator的答案中所build议的那样) 对setlocale的调用是成功的(它返回'en_US.utf8'而不是FALSE ) 问题的原因: 服务器正在使用iconv的错误实现。 它有glibc版本,而不是所需的libiconv版本。 请注意,某些系统上的iconvfunction可能无法按预期工作。 在这种情况下,安装GNU libiconv库是个好主意。 这很可能会以更一致的结果结束。 – PHP手册对iconv的介绍 有关PHP使用的iconv实现的细节包含在phpinfo函数的输出中。 (我无法用正确的iconv库重新编译我正在为这个项目工作的服务器上,所以下面我接受的答案是最有用的去除不带iconv支持的口音。)

在java中编码转换

有没有免费的Java库,我可以使用一个编码中的string转换为其他编码,像iconv在PHP中? 我正在使用Java版本1.3。