Darmowy konwerter online VMSG do CSV
Wyodrębnij rekordy SMS z kopii zapasowych VMSG do przeszukiwalnych plików CSV kompatybilnych z arkuszami kalkulacyjnymi.
Konwertuj VMSG na CSV online - za darmo
Plik jest przetwarzany natychmiast i usuwany zaraz po pobraniu.
Zaimportuj plik z adresu URL
Wklej bezpośredni link do pliku. Pobierzemy go na nasz serwer i przekonwertujemy dokładnie tak jak przesłany plik.
Jak to działa
-
1/3
Prześlij swój plik .vmsg
Kliknij, aby wybrać plik, który chcesz przekonwertować, lub po prostu przeciągnij go i upuść w zaznaczonym obszarze.
-
2/3
Wykonaj konwersję .vmsg do .csv
Po pomyślnym przesłaniu pliku kliknij konwersję, gdy będziesz gotowy.
-
3/3
Pobierz przekonwertowany plik .csv
Wynik konwersji jest gotowy do pobrania.
Jak konwertować vmsg do csv
- Platformy mobilne
- Brak ocen.
Stara kopia zapasowa telefonu lub narzędzie do obsługi wiadomości może eksportować rekordy SMS jako .vmsg, podczas gdy arkusze kalkulacyjne, bazy danych i narzędzia do tworzenia raportów zwykle wymagają formatu .csv. Konwersja przekształca rekordy wiadomości w wiersze, które można przeszukiwać, filtrować, edytować lub importować.
Czym jest format VMSG
VMSG, nazywany również vMessage, to format tekstowy używany przez starsze telefony komórkowe, oprogramowanie do obsługi telefonów oraz narzędzia do tworzenia kopii zapasowych SMS. Plik zwykle zawiera sekcje BEGIN:VMSG, BEGIN:VENV i BEGIN:VBODY z właściwościami takimi jak TEL, DTSTART, SUBJECT, BODY, X-IRMC-BODY, X-IRMC-TYPE i X-IRMC-BOX.
VMSG jest czytelny jako zwykły tekst, ale jego zagnieżdżone rekordy i właściwości zależne od producenta nie są automatycznie wyświetlane jako wiersze i kolumny. Niektóre pliki przechowują numer telefonu w otaczającej sekcji VCARD, a nie wewnątrz treści wiadomości.
Czym jest format CSV
CSV przedstawia dane tabelaryczne w postaci wierszy i pól. Excel, LibreOffice Calc, Google Sheets, narzędzia do importowania baz danych i większość bibliotek skryptowych obsługują ten format. Eksport wiadomości zwykle korzysta z kolumn takich jak date, phone, type, folder, subject i body.
CSV jest przydatny do sortowania według daty, filtrowania wiadomości przychodzących i wychodzących, wyszukiwania tekstu wiadomości, importowania rekordów do innego systemu oraz tworzenia kompaktowego archiwum tekstowego. Nie zachowuje składni VMSG, załączników, stanów dostarczenia ani metadanych zależnych od producenta, chyba że te wartości zostaną jawnie wyeksportowane do dodatkowych kolumn.
Konwersja pliku za pomocą lokalnego skryptu
Nie istnieje uniwersalna implementacja standardu VMSG: producenci telefonów i programy do tworzenia kopii zapasowych używają różnych nazw właściwości i kodowań. Niewielki lokalny parser w języku Python jest zwykle bezpieczniejszy niż przesyłanie prywatnych wiadomości do ogólnej witryny konwertującej.
Zainstaluj Python 3, zapisz poniższy kod jako vmsg_to_csv.py i umieść go obok pliku źródłowego:
import csv
import sys
import quopri
def decode(value, params):
if any(p.upper() == 'ENCODING=QUOTED-PRINTABLE' for p in params):
value = quopri.decodestring(value).decode('utf-8', errors='replace')
slash = chr(92)
return (value.replace(slash + 'n', '\n')
.replace(slash + 'N', '\n')
.replace(slash + ',', ',')
.replace(slash + ';', ';')
.replace(slash + slash, slash))
def convert(source, destination):
rows = []
record = None
contact_tel = ''
in_vcard = False
with open(source, encoding='utf-8-sig', errors='replace') as handle:
lines = []
for raw in handle:
line = raw.rstrip('\r\n')
if line.startswith((' ', '\t')) and lines:
lines[-1] += line[1:]
else:
lines.append(line)
for line in lines:
upper = line.upper()
if upper == 'BEGIN:VCARD':
in_vcard = True
continue
if upper == 'END:VCARD':
in_vcard = False
continue
if upper == 'BEGIN:VBODY':
record = {}
continue
if upper == 'END:VBODY':
if record is not None:
record['_CONTACT_TEL'] = contact_tel
rows.append(record)
record = None
continue
if ':' not in line:
continue
left, value = line.split(':', 1)
parts = left.split(';')
name = parts[0].upper()
value = decode(value, parts[1:])
if in_vcard and name == 'TEL':
contact_tel = value
elif record is not None:
record[name] = value
def first(row, names):
for name in names:
if row.get(name, ''):
return row[name]
return ''
columns = ['date', 'phone', 'type', 'folder', 'subject', 'body']
with open(destination, 'w', newline='', encoding='utf-8-sig') as handle:
writer = csv.DictWriter(handle, fieldnames=columns)
writer.writeheader()
for row in rows:
writer.writerow({
'date': first(row, ['DTSTART', 'DATE']),
'phone': first(row, ['TEL', 'X-IRMC-RECIPIENT', 'TO', 'FROM', '_CONTACT_TEL']),
'type': first(row, ['X-IRMC-TYPE', 'TYPE']),
'folder': first(row, ['X-IRMC-BOX', 'FOLDER']),
'subject': first(row, ['SUBJECT']),
'body': first(row, ['BODY', 'X-IRMC-BODY', 'TEXT', 'MESSAGE'])
})
if len(sys.argv) != 3:
raise SystemExit('Usage: python vmsg_to_csv.py input.vmsg output.csv')
convert(sys.argv[1], sys.argv[2])Uruchom python vmsg_to_csv.py messages.vmsg messages.csv. W systemach, które używają polecenia python3, uruchom python3 vmsg_to_csv.py messages.vmsg messages.csv. Otwórz wynik w Calc lub Excelu; znacznik kolejności bajtów UTF-8 pomaga oprogramowaniu arkusza wykryć znaki inne niż ASCII.
Przed konwersją otwórz kopię pliku VMSG w edytorze tekstu i sprawdź rzeczywiste nazwy jego właściwości. Skrypt rozpoznaje typowe aliasy, w tym BODY, X-IRMC-BODY, TEXT i MESSAGE. Jeśli wiadomości używają innej nazwy, dodaj ją do listy treści w skrypcie. Jeśli plik korzysta ze znaków kodowanych w innym standardzie niż UTF-8, zmień kodowanie wejściowe i przed przetworzeniem całej kopii zapasowej sprawdź znaki diakrytyczne.
Inne opcje konwersji
Dedykowane narzędzie, takie jak vmsg2csv, może działać w przypadku konkretnego wariantu kopii zapasowej telefonu, ale najpierw sprawdź jego źródło, obsługiwane właściwości i wynik na niewielkiej kopii. Dostępność i zgodność starszych narzędzi różnią się, a wiele z nich nie dekoduje poprawnie tekstu w formacie quoted-printable, łamanych wierszy ani pól zależnych od producenta.
LibreOffice Calc i Excel mogą otwierać pliki CSV, ale nie są niezawodnymi parserami VMSG. Importowanie pliku VMSG za pomocą File → Open działa dopiero po uprzednim znormalizowaniu rekordów do rozdzielanych wierszy.
Ogólne konwertery online rzadko wymieniają VMSG jako obsługiwany format wejściowy i mogą błędnie odczytywać jego zagnieżdżoną strukturę. Korzystaj z usługi online tylko wtedy, gdy wyraźnie obsługuje VMSG, wyjaśnia zasady przechowywania i usuwania danych, używa HTTPS oraz nie wymaga niepotrzebnego dostępu do konta. Nie przesyłaj kopii zapasowych SMS zawierających prywatne wiadomości, numery telefonów ani kody uwierzytelniające, chyba że akceptujesz związane z tym ryzyko dla prywatności.
Sprawdzanie przekonwertowanych danych
Porównaj kilka wierszy CSV ze źródłem, w tym wiadomości zawierające przecinki, podziały wiersza, cudzysłowy, znaki inne niż ASCII oraz puste treści. Writer CSV języka Python poprawnie umieszcza przecinki i osadzone podziały wiersza w cudzysłowach, ale program telefonu może przechowywać wielowierszową treść lub zawartość w formacie quoted-printable w sposób zależny od producenta, co wymaga dodatkowego dekodowania.
Zachowaj oryginalny plik VMSG. CSV to spłaszczony format wymiany i może pomijać załączniki, stan odczytania lub dostarczenia, strukturę kontaktów, znaczniki czasu z informacjami o strefie czasowej oraz pola, które nie zostały uwzględnione w wybranych kolumnach wyjściowych.
Porównanie formatu VMSG z CSV
Jak formaty VMSG i CSV wypadają w porównaniu pod względem najważniejszych cech dla tej konwersji.
| Cecha | .VMSG vMessage SMS backup | .CSV Comma-Separated Values |
|---|---|---|
| Czytelny tekstowo | Tak | Tak |
| Typy danych | Nietypowane (cały tekst) | Typowane |
| Zagnieżdżone struktury | Nie | Nie |
| Formuły | Nie | Nie |
| Wiele tabel lub arkuszy | Nie | Nie |
| Typowy rozmiar pliku | Bardzo mały | Mały |
| Otwarty standard | Częściowo otwarty | Tak |
| Najlepszy do | Wymiana danych | Wymiana danych |
| Typ MIME | — | text/csv |
Informacje o rozszerzeniach i typach plików zapewnia File-Extensions.org
Sugerowane oprogramowanie i linki: konwertery vmsg na csv
Najczęściej zadawane pytania
Czy konwerter VMSG do CSV jest darmowy?
Tak, konwersja VMSG do CSV na 101convert.com jest całkowicie darmowa. Nie wymaga rejestracji, adresu e-mail ani instalacji. Jeśli potrzebujesz wyższego limitu rozmiaru pliku lub chcesz konwertować więcej plików naraz, sprawdź nasze plany.
Jak duży może być mój plik VMSG?
Możesz przesłać pliki VMSG o rozmiarze do 3 MB i przekonwertować do 3 plików jednocześnie w jednej partii. W płatnym planie limit wynosi do 50 MB na plik i 100 plików naraz, sprawdź nasze plany.
Co dzieje się z przesłanymi plikami?
Pliki są przetwarzane automatycznie i usuwane z naszych serwerów kilka minut po konwersji. Nigdy nie przeglądamy ani nie udostępniamy Twoich plików.
Czy muszę instalować oprogramowanie, aby przekonwertować VMSG do CSV?
Nie. Konwersja VMSG do CSV odbywa się całkowicie online w przeglądarce i działa w systemach Windows, Mac, Linux, Android i iPhone.
Konwersja nie powiodła się?
W większości przypadków przyczyną jest nieprawidłowy format pliku. Prześlij prawidłowy plik VMSG dla tej konwersji z VMSG do CSV. Czasami problem może również występować po naszej stronie. Analizujemy powtarzające się nieudane konwersje i wyłączamy lub naprawiamy konwerter, jeśli wykryjemy usterkę.
Jakie informacje zostają zachowane podczas konwersji VMSG do CSV?
Konwersja wyodrębnia pola SMS, takie jak nadawca lub odbiorca, data i godzina oraz treść wiadomości, jeśli te pola są obecne w rekordach VMSG. Dodatkowe pola obsługiwane tylko przez konkretny wariant VMSG mogą nie mieć odpowiadającej im kolumny CSV.
Czy załączniki i formatowanie wiadomości zostaną zachowane przy konwersji VMSG do CSV?
Nie, CSV przechowuje dane SMS jako zwykły tekst i pola tabelaryczne, dlatego załączniki, formatowanie tekstu oraz pierwotna struktura rekordu VMSG nie są zachowywane. Podziały wierszy w wiadomości mogą pozostać jako zawartość komórki, ale nie zachowają pierwotnego wyglądu.
Czy można przekonwertować CSV z powrotem do oryginalnej kopii zapasowej VMSG?
Zwykle nie w dokładny sposób, ponieważ CSV nie zachowuje całej struktury VMSG, metadanych ani szczegółów kodowania. Najlepiej traktować go jako edytowalny i przeszukiwalny eksport, a nie kopię zapasową, którą można odtworzyć.
Dlaczego niektórych wiadomości VMSG brakuje w CSV albo są rozdzielone na niewłaściwe kolumny?
Może się tak zdarzyć, gdy kopia zapasowa używa niestandardowego wariantu VMSG, zawiera uszkodzone rekordy lub korzysta z nietypowego kodowania znaków. Przecinki, cudzysłowy lub podziały wierszy w treści wiadomości muszą być obsługiwane jako dane CSV, a nieprawidłowe rekordy mogą uniemożliwić niezawodne wyodrębnienie pól.