0

вот описание: Я делаю CSV-файл из файла .xls копированием/вставкой. Чем CSV-файл загружен в таблицу в базе данных.Символы как числа и специальные символы

Проблема: При копировании данных из файла также копируются некоторые «специальные» символы. Однако эти «специальные» символы не замечены в файле .xls, потому что они отображаются как пробелы.

Вопрос: Какой инструмент (бесплатный) или какой метод можно использовать для идентификации этого «специального» символа, чтобы я мог их удалить? Я полагаю, это должен быть какой-то инструмент, который идентифицирует конкретный символ некоторым его числовым эквивалентом.

+0

Блокнот поиск/замена ?? - Или просто загрузите файл Excel непосредственно в базу данных. –

+0

http://notepad-plus-plus.org/ - NotePad ++ также имеет 'Regex Matching' для удаления/замены сразу нескольких конкретных символов –

+0

заменить их не стоит. Это проблема их идентификации. Когда я открываю файл в Notepad ++ (который я использую) вместо специальных символов, я вижу только пробелы – Adam

ответ

1

Из предыдущего вопроса:

Text file in VBA: Open/Find Replace/SaveAs/Close File

Sub ReplaceStringInFile() 

Dim sBuf As String 
Dim sTemp As String 
Dim iFileNum As Integer 
Dim sFileName As String 

sFileName = "C:\Temp\test.txt" '<-- Edit as needed 

iFileNum = FreeFile 
Open sFileName For Input As iFileNum 
Do Until EOF(iFileNum) 
    Line Input #iFileNum, sBuf 
    sTemp = sTemp & sBuf & vbCrLf 
Loop 
Close iFileNum 
sTemp = Replace(sTemp, "THIS", "THAT") '<--- edit as needed 

iFileNum = FreeFile 
Open sFileName For Output As iFileNum 
Print #iFileNum, sTemp 
Close iFileNum 

End Sub 

Возможно, что вам нужно сделать, это изменить эту строку:

sTemp = Replace(sTemp, "THIS", "THAT")

к чему-то вроде этого:

sTemp = Replace(sTemp, Chr(10), vbNullString)

Который заменит все возвращаемые каретки нулем. Разумеется, вам нужно как-то определить, какие значения CHR() вы хотите удалить.

Вот список значений CHR(), которые могут быть полезны.

http://www.techonthenet.com/ascii/chart.php

Смежные вопросы