- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试读取一些 .txt 文件,然后对文件中的字符串进行一些标记化操作,然后将它们写入另一个文件。但是在我的文件写入之后,其中一些是用西方(ISO-8859-15)编码编写的;
Ãallı Neyzen Tevfik MÃŒzeyyen Senar MÃŒzeyyen Senar Ãallı öteden dosttular eÅi ErcÃŒment IÅıl Ãallı arkadaÅ idiler Hele annesi 1943 vefat ettiÄinde...
但其中一些在阅读时采用常规范式。(当前语言环境(UTF-8))。我希望它们全部采用相同格式。(UTF-8)
我的代码是这样的:
#include <iostream>
#include <fstream>
#include <cstring>
#include <string>
#include <sstream>
#include <complearn.h>
#include <stdlib.h>
#include <locale.h>
#include <locale>
#include <clocale>
using namespace std;
int main(int argc, char *argv[])
{
int fileNum=20;//Number of file wanted to clean
string fileDir="HU";
string inputFile=fileDir+"/"+fileDir;//Directory and name of file
string outputFile=fileDir+"/Out/out";//output/cleaned file name
string word1,word2,fword;
string frequencyFile="frequencyList.txt";
ifstream fin2(frequencyFile.c_str(),ios::in);
locale utf8_locale(locale(), new codecvt_byname<wchar_t, char, mbstate_t> ("en_US.UTF-8"));
locale::global( std::locale("en_US.UTF8") );
setlocale(LC_ALL, "");
for (int i=1;i<=fileNum;i++){
inputFile+=to_string(i)+".txt";
outputFile+=to_string(i)+".txt";
ifstream fin1(inputFile.c_str(),ios::in);
ofstream finNew(outputFile.c_str(),ios::out|ios_base::binary);
finNew.imbue(utf8_locale);
if(fin1.is_open())
{
if(fin2.is_open())
{
while(fin1 >> word1)
{
char *token=NULL;//(char*) malloc(sizeof(20*sizeof(int)));
char *dup = strdup(word1.c_str());
token = strtok(dup, "(&+.,!?*)...;':-)\"\"’“\\/\'");//extract from punctuations
if(token==nullptr)
token=" ";
while(fin2 >> word2)
{
if(strcmp(token,word2.c_str())==0)//if token is in frequencyfile pass
break;
}
if(strcmp(token,word2.c_str())!= 0&&token!=nullptr)
{
finNew<< string(token) << " ";//write to my new file
}
fin2.clear();
fin2.seekg( 0, std::ios::beg );
}//fin1 loop
}//fin2.close()
}//fin1.close()
inputFile=fileDir+"/"+fileDir;//Directory and name of file
outputFile=fileDir+"/Out/out";
}//end of for
return(0);
}
我试图改变语言环境,希望能有所改变,但什么都没有改变。请帮助我导致此问题的代码有什么问题。
PS:顺便说一句,我在 linux mint/maya 平台上,我正在像在代码块中一样编译我的代码。
例如,这是我的输入文件之一:
Türkiye’nin ‘U’ dönüşü
ABD’nin ana akım medyasında süreç boyunca yayınlanan Türkiye’yi IŞİD’e karşı duyarsız kalmakla suçlayan yorumlar dikkat çekici olsa da Washington’un başından beri Ankara’dan istediği şeyler PYD’nin talepleriyle örtüşüyor değildi. Haddizatında ABD’nin Rojava’yı PYD’ye bırakmayı tercih edeceğini düşünmek de mantıksız olurdu. Hem Türkiye’nin hem Irak’taki Kürdistan Özerk Yönetiminin arzulamadığı bir formülü satın alması mümkün değildi Obama yönetiminin. Dolayısıyla Ankara’yla sürdürülen müzakereler neticesinde PYD’nin de hayır diyemeyeceği bir formül oluşturdular.
“Kobani bizim için stratejik öncelik değil” diyerek çok önceden mesajını veren ABD bir süre sonra Kobani’yi kuşatan IŞİD birliklerini bombalamaya başladı. Ancak en son bombardımandan sonra“Bombalıyoruz ama Kobani yine de düşebilir” şeklinde ilginç bir açıklama yapmaktan geri durmadı. Türkiye tarafında ise daha önce Cumhurbaşkanı Erdoğan Kobani için “düştü düşüyor” demişti.
Aslında bütün bunlar olup biterken Kobani’nin çok yakınlarında bir yerde, Irak’ın Dohuk şehrinde geniş bir müzakere masası kurulmuş bulunuyordu. Masanın bir yanında Barzani yanlısı Rojavalı gruplar, diğer yanında ise PKK’lılar oturuyordu. Bundan on gün önce başlayan müzakerelerde Rojava’nın “kurtarılmasından sonra” yönetimde hangi grubun ne kadar ağırlığının olacağı konusu ele alındı. Aslında PYD “Rojava Devrimi”yle yönetimi de facto tek başına eline almış, Barzani yanlısı grupları da ya etkisiz hale getirmiş ya da sürüp çıkarmıştı. Şimdiyse şartlar değişmiş, Kobani’nin Barzani’nin müdahalesiyle kurtarılması gündeme gelmiş olduğu için yönetim gücünün yeniden paylaşılması gündeme gelmişti mecburen.
PYD’liler şimdi “Peşmergenin geleceğinden haberimiz yok. Buna gerek de yok, silah göndersinler yeter” diye açıklamalar yapıyorlar ama aslında geçen Pazar günü yapılan görüşmelerde belli ölçüde anlaşma sağlandı ve ABD bunun üzerine operasyon için düğmeye bastı zaten. PYD Kobani’nin Barzani tarafından kurtarılmasını kabul etmek zorundaydı. Bunu kabul etmezse Kobani IŞİD’in eline geçecek ama nasıl olsa bu küçük şehir daha sonra Barzani tarafından IŞİD’in elinden yine kurtarılacaktı!
Diğer yandan Irak’taki IŞİD ilerlemesinin tehdidi altında bulunan başkenti Erbil’i bile nasıl koruyacağını bilemeyen Barzani yönetiminin Suriye’deki soydaşları için böylesine bir tehlikeli maceraya atılması için ciddi bir güvenceye ihtiyaç duyacağı da muhakkak. Washington’un bu güvenceyi verdiği tahmin edilebilir. Aynı şekilde güney sınırı boyunca uzanan bir bölgenin ne IŞİD’in eline geçmesini ne de PKK’nın Suriye kolunun hâkimiyeti altında olmasını istemeyen Türkiye’nin söz konusu bölgenin bunlar yerine son zamanlarda adeta stratejik çıkar ortaklığı yaptığı Barzani yönetiminin kontrolüne girmesini tercih edeceği de tahmin edilebilir. Cumhurbaşkanı Erdoğan’ın dünkü açıklamasından öğrendik ki “peşmerge formülü” zaten Türkiye’nin önerisi olarak gündeme gelmiş.
Daha önce “PKK’nın Suriye koluna silah gönderilmesini kabul edemeyiz” deyip de şimdi bunu kabullenmek bir tutarsızlık oluşturmuyor mu peki? Bir “u dönüşü” söz konusu değil mi? Bana sorarsanız bir u dönüşü yok burada, belki bir şerit değiştirme olabilir, o kadar! Çünkü esas olan Rojava adı verilen bölgenin ne IŞİD’in ne de PKK’nın kontrolünde olmasına rıza göstermemek. Barzani formülü bunu sağlıyor sonuçta. İkincisi PKK’nın Suriye koluna ağır silahlar verilmesini milli güvenliği bakımından sakıncalı bulan Türkiye için söz konusu silahların peşmergenin elinde olması ise tercih edilebilir bir durum. Zaten ilk sevkiyatta hafif silahların gönderildiği açıklandı. Bunların - zaten- Barzani yönetimine ait silahlar olduğu da vurgulandı. Yani ABD kimseye silah vermiş olmuyor. Barzani güçlerinin ellerindeki silahları PKK’ya bırakacakları da düşünülemeyeceğine göre demek ki Türkiye’nin çekincelerini giderecek şekilde bir operasyon kotarılmış bulunuyor. Üstelik Türkiye’nin isteyebileceği en uygun formül uygulamaya sokulmuş bulunuyor. Bunlara bakıldığında Türkiye’ye rağmen yapılan bir operasyondan veya Türkiye’nin mecburen u dönüşü yapmasından söz etmek hiç mantıklı görünmüyor.
这是在它成为输出文件之后,当我尝试在我的文本编辑器 (gedit) 中通过 UTF-8 编码打开它时:
\98U dönüşü akım medyasında süreç yayınlanan IŞİD duyarsız kalmakla suçlayan yorumlar çekici Washington başından PYD talepleriyle örtüşüyor değildi Haddizatında Rojava PYD bırakmayı edeceğini düşünmek mantıksız olurdu Hem Kürdistan Özerk Yönetiminin arzulamadığı formülü alması değildi Obama yönetiminin sürdürülen müzakereler neticesinde PYD hayır diyemeyeceği formül oluşturdular Kobani stratejik öncelik önceden mesajını Kobani kuşatan IŞİD birliklerini bombalamaya bombardımandan Kobani düşebilir yapmaktan durmadı tarafında Kobani düştü düşüyor demişti biterken Kobani yakınlarında Dohuk şehrinde müzakere masası kurulmuş bulunuyordu Masanın Barzani yanlısı Rojavalı gruplar PKK oturuyordu Bundan müzakerelerde Rojava kurtarılmasından yönetimde grubun ağırlığının olacağı alındı PYD Rojava Devrimi facto eline almış Barzani yanlısı grupları etkisiz getirmiş sürüp çıkarmıştı Şimdiyse şartlar değişmiş Kobani Barzani müdahalesiyle kurtarılması gelmiş gücünün paylaşılması gelmişti mecburen PYD Peşmergenin geleceğinden haberimiz silah göndersinler yeter açıklamalar yapıyorlar Pazar görüşmelerde anlaşma sağlandı operasyon düğmeye bastı PYD Kobani Barzani kurtarılmasını zorundaydı etmezse Kobani IŞİD eline geçecek şehir Barzani IŞİD elinden kurtarılacaktı IŞİD ilerlemesinin tehdidi başkenti Erbil koruyacağını bilemeyen Barzani yönetiminin Suriye soydaşları böylesine tehlikeli maceraya atılması güvenceye duyacağı muhakkak Washington güvenceyi edilebilir güney sınırı uzanan bölgenin IŞİD eline geçmesini PKK Suriye kolunun hâkimiyeti olmasını istemeyen bölgenin zamanlarda adeta stratejik çıkar ortaklığı Barzani yönetiminin kontrolüne gir
mesini edeceği edilebilir dünkü açıklamasından öğrendik peşmerge formülü önerisi gelmiş PKK Suriye koluna silah gönderilmesini edemeyiz deyip kabullenmek tutarsızlık oluşturmuyor peki u dönüşü Bana sorarsanız u dönüşü şerit değiştirme esas Rojava bölgenin IŞİD PKK kontrolünde rıza göstermemek Barzani formülü sağlıyor sonuçta İkincisi PKK Suriye koluna silahlar verilmesini güvenliği bakımından sakıncalı bulan silahların peşmergenin elinde edilebilir sevkiyatta hafif silahların gönderildiği açıklandı Bunların Barzani yönetimine silahlar vurgulandı kimseye silah vermiş olmuyor Barzani güçlerinin ellerindeki silahları PKK bırakacakları düşünülemeyeceğine çekincelerini giderecek operasyon kotarılmış \C3 isteyebileceği formül uygulamaya sokulmuş Bunlara bakıldığında operasyondan mecburen u dönüşü yapmasından mantıklı görünmüyor
如您所见,文件中有\98 和\C3 字符。如果我先打开文本编辑器,然后打开未自动检测到的 utf-8 编码文件,我可以看到这样的文件。
最佳答案
文本文件中没有指定编码。无论你写什么字节,在那里,无论其他应用程序将使用什么,他们都会这样解释它。该文件显然是用 UTF-8 编写的,只是您打开它的应用程序错误地将其检测为 ISO 8859-15。
关于c++ - 如何将我的 char* 指针写入始终为 utf8 格式的文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28455655/
当我使用路径文件上的快捷方式在文件之间移动时,似乎我不仅仅是在文件之间移动。 我使用>转到一个文件,在该文件中我更改光标的位置并执行某些操作,然后按 gf noremap 关于vim 通过快捷方式直
我正在尝试使用 Pong P. Chu 的书来学习 Verilog。我有一个关于如何评估和实现始终 block 的问题。作者代码中的风格让我感到困惑。 在此示例中,他编写了一个具有两个输出寄存器“y1
我正在尝试制作一个聊天应用程序,因此我需要它始终接收服务器信息。因此,当请求完成时,在: http.onreadystatechange=function(){ 我再次调用该函数,因此: reques
当您在 always block 敏感度列表中使用通配符 @* 时,我对什么被视为输入有点困惑。例如,在下面的示例中,哪些信号被解释为导致 always block 被重新评估的输入? 据我了解,cl
我有一个充当调试器的程序。我为线程设置了一个 hw bp,将 dr0 设置为我希望 bp 所在的地址,将 dr7 设置为 1,因为我希望 bp 在每次执行该地址时生成一个事件。 它有效,但现在的问题是
如何每次都以管理员身份在 Windows 上运行 git bash。 操作系统 - Windows 10 家庭版 64 位 最佳答案 我在 Google 上找到了这个结果: 将 Git Bash 设置
使用 accept() 时或 getpeername() , sockaddr_storage总是有 ss_family=AF_INET6 : struct sockaddr_storage addr
我在 Cordova 方面还有另一个问题。我想在 Cordova 7.1.0 中使用插件“cordova.custom.plugins.exitapp”和“cordova-plugins-printe
我试图让模块通过 ISE 12.4 中的语法检查,但它给了我一个我不明白的错误。首先是代码片段: parameter ROWBITS = 4; reg [ROWBITS-1:0] temp; genv
我正在使用Cordova开发适用于iOS的应用程序,其中包括地理位置功能(我使用官方插件https://github.com/apache/cordova-plugin-geolocation)。我在
我想知道是否有可能只在敏感列表中的多个信号一起变化时才执行 always block 。 例如,假设我有一个信号“in”和另一个“posedge clk”。我希望在两个信号都发生变化时执行 alway
我需要实现一种算法来访问数据库来检查最后一个元素,以便计算新的元素。当然,第一次这是不可能的,因为数据库是空的,我得到 IndexOutOfBoundsException) index 0 reque
我正在利用我在网上找到的画廊系统,根据鼠标图像的接近程度,它会按比例增长。 链接:Gallery 好吧,我调整了代码以响应(如您所见正在 build 中)并且没有明显的问题。我的问题在更改分辨率时开始
我正在创建一个 kiosk 应用程序,我想确保它无论如何始终位于其他 Windows 应用程序和 Windows 任务栏之上。 我已经阻止了 Windows 键盘命令(alt-tab 等),但仍有可能
我即将开始一个新的 React 项目,并尝试利用我以前的知识来创建一些关于我如何构建应用程序的规则。 有些事情我认为是真的: Redux 保存整个应用程序的“主要”数据 如果需要跨应用程序共享,Red
当你打开 VS Code 时,终端默认是在底部打开的。您可以单击该图标将其向右移动。我想知道是否有办法将右侧打开设置为默认值。 谢谢。 最佳答案 是的 - 在 v1.20 中引入了设置 workb
我有一个Events表,其中包含各种类型的事件。我只关心其中一种类型。因此,我编写的每个查询都以开头 Events.objects.filter(event_type="the_type").\
我在单例中创建了一个Timer,并且我一直在努力解决为什么Timer没有触发。我查看了这里的帖子,但没有找到我认为可以直接回答我的问题的帖子。 class ConnectionStateMonitor
我在 TableViewController 中显示了一组项目。它们在 TVC 中正确显示。下面的代码会继续,但它只会继续到我的 MKMapItem 数组的 indexPath 0,而不是被单击的单元
我的 VC 是这样的: var coins = 50 // coins override func viewDidLoad() { super.viewDidLoad() if(SKP
我是一名优秀的程序员,十分优秀!