2023-12-12から1日間の記事一覧

C++でCSVがutf8でもshiftjisでもshiftjisのデータとして読み込めるクラス

#include <iostream> #include <fstream> #include <vector> #include <string> #include <locale> #include <codecvt> class CSVReader { public: CSVReader(const std::string& filename) : filename_(filename) {} bool ReadCSV(std::vector<std::vector<std::string>>& data) { std::ifstream file(filename_); if (!fi…</std::vector<std::string></codecvt></locale></string></vector></fstream></iostream>

C++でエンコード自動判断関数

#include <fstream> #include <iostream> #include <vector> // エンコーディングを判断するための関数 std::string GetFileEncoding(const std::string& filePath) { std::ifstream file(filePath, std::ios::binary); if (!file) { return "Unknown"; } std::vector<unsigned char> buffer(4); file.r</unsigned></vector></iostream></fstream>…

C#でCSVのエンコードを自動判定して読み込む

.NET Core 3.0以降、Shift-JISエンコーディング(コードページ932)はデフォルトでサポートされなくなりました。そのため、カスタムエンコーディングプロバイダーを登録する必要があります。 using System; using System.Collections.Generic; using System.…