@dk-web

Как корректно записать в MySQL из Excel русский и французский язык?

Рвется там где не ждешь..
Таблица - названия стран - на русском, английском и французском.
Тык пык и csv ни в какую не хочет корректно отображать французский.. Alg?rie - и т.д.
Мне кажется уже все комбинации кодировок перепробовал.

Если не csv, то как импортировать? Нормально сохраняет только в формате Текст Юникод, а CSV с форматом Юникод не хочет принимать...
  • Вопрос задан
  • 540 просмотров
Сложность: —
Решения вопроса 1
Пригласить эксперта
Ответы на вопрос 1
  • bopoh13
    @bopoh13
    VBA, analytic, Python (noob)
    Я вообще не понял, при чём тут Microsoft Excel, PHP и Парсинг.
    1. Если файл CSV, сохраняй в Юникод и заливай в базу.
    2. Если файл XLS, устанавливай соединение с базой, открывай файл: читай и заливай.
    3. Средствами VBA (через Excel) можно подключить библиотеку для перевода текста в Юникод (в модуле пишем):
    Private Declare Function WideCharToMultiByte Lib "kernel32.dll" _
      (ByVal CodePage As Long, ByVal dwFlags As Long, ByVal lpWideCharStr _
      As Long, ByVal cchWideChar As Long, ByVal lpMultiByteStr As Long, _
      ByVal cchMultiByte As Long, ByVal lpDefaultChar As Long, _
      ByVal lpUsedDefaultChar As Long) As Long
    
    Public Function ToUTF8(ByVal sText As String) As String
    Dim nRet As Long, strRet As String
      strRet = String(Len(sText) * 2, vbNullChar)
      nRet = WideCharToMultiByte(65001, &H0, StrPtr(sText), Len(sText), _
        StrPtr(strRet), Len(sText) * 2, 0&, 0&)
      ToUTF8 = Left(StrConv(strRet, vbUnicode), nRet)
    End Function
    
    Sub test() ' Пример работы с функцией '
      text = ToUTF8(textANSI)
    End Sub
    Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через TM ID
Похожие вопросы
Вакансии с Моего Круга Все вакансии
Заказы с Фрилансим Все заказы