بعد فتح ملف CSV أو لصقه يظهر TSV في المعاينة، ويحفظه زر تنزيل TSV ملفًا بامتداد .tsv. الفواصل داخل القيم لا تحتاج إلى علامات اقتباس في TSV، فتخرج أغلب الصفوف نصًا عاديًا مفصولًا بعلامات جدولة. والقرار الحقيقي الوحيد هو ما يُفعل بعلامات الجدولة وفواصل الأسطر داخل القيمة: وضعها بين علامتي اقتباس لـExcel وpandas، أو تهريبها بشرطة مائلة عكسية لـPostgreSQL، أو استبدالها بمسافة لقارئات TSV الصارمة. يُحوَّل الملف في متصفحك ولا يُرفع أبدًا.
طريقة تحويل CSV إلى TSV
- افتح ملف
.csv أو .tsv أو .txt، أو أفلته على الأداة، أو الصق الصفوف. يُكتشف المحدِّد تلقائيًا؛ ويمكن عند الحاجة ضبطه أو ضبط ترميز قديم مثل Windows-1252 أو Windows-1256 من إعدادات الاستيراد. - تحت علامات الجدولة وفواصل الأسطر داخل القيم اختر الأسلوب الذي يتوقعه البرنامج الذي سيقرأ ملف TSV. ثم اضبط نهايات الأسطر وتضمين صف العناوين.
- اختر ترميز الناتج ثم تنزيل TSV، أو نسخ النص.
لتحويل عدة ملفات CSV بالإعدادات نفسها، اختر دفعة واحدة: تحويل عدة ملفات. يُقرأ كل ملف مع اكتشاف المحدِّد تلقائيًا واعتبار صفه الأول صف عناوين، وتُنزَّل النتائج معًا في ملف ZIP واحد.
خيارات علامات الجدولة وفواصل الأسطر والترميز
| وضع القيمة بين علامتي اقتباس (Excel وpandas) | الخيار الافتراضي. القيمة التي تحتوي على علامة جدولة أو فاصل سطر أو علامة اقتباس مزدوجة أو مسافة في البداية أو النهاية تُحاط بعلامتي اقتباس مزدوجتين، وتُضاعَف علامات الاقتباس داخلها، وهي قواعد CSV نفسها مع علامة الجدولة محدِّدًا. وكل ما عدا ذلك يُكتب دون علامات. |
|---|---|
| تهريب بالشرطة المائلة العكسية \t \n (PostgreSQL) | لا يستخدم علامات الاقتباس أبدًا. تصبح علامة الجدولة \t، وحرف السطر الجديد \n، وحرف الرجوع إلى بداية السطر \r، والشرطة المائلة العكسية \\، فيبقى كل سجل في سطر واحد. وهذه الصيغة النصية التي يقرؤها الأمر COPY في PostgreSQL؛ وتُكتب علامات الاقتباس المزدوجة أحرفًا عادية. |
| استبدالها بمسافات (TSV صارم) | تصبح كل علامة جدولة أو فاصل سطر أو زوج CRLF داخل القيمة مسافة واحدة، فيستوفي الملف قاعدة IANA بألا تحتوي الحقول على علامات جدولة. وتبقى الشرطات المائلة العكسية وعلامات الاقتباس كما هي. وهذا يغيّر البيانات، وتذكر الأداة عدد القيم المتأثرة. |
| نهايات الأسطر | CRLF (Windows) (الافتراضي) أو LF (Unix وmacOS) بعد كل سجل، بما فيه الأخير. |
| تضمين صف العناوين | يُعطَّل لكتابة صفوف البيانات وحدها، مثلًا عند الإضافة إلى جدول موجود. |
| الحماية من الصيغ في جداول البيانات | مفعّل افتراضيًا. تُسبق القيم التي تبدأ بـ= أو + أو - أو @ أو علامة جدولة أو حرف رجوع إلى بداية السطر بعلامة '، فيعرضها جدول البيانات كنص. ولا تتغير الأرقام البسيطة مثل -12.5. ويُعطَّل عندما يُغذّي ملف TSV قاعدة بيانات أو برنامجًا نصيًا ويجب أن يحمل القيم كما هي تمامًا. |
| ترميز الناتج | UTF-8 أو UTF-8 مع BOM (لبرنامج Excel) أو UTF-16 LE (مع علامة ترتيب البايت) أو Windows-1252. ويتوقف Windows-1252 برسالة تذكر أي حرف لا يستطيع تخزينه، ومنها الحروف العربية. |
الفواصل والخلايا متعددة الأسطر والمعرّفات في TSV
- الفواصل المحاطة بعلامات اقتباس في CSV لا تحتاج إلى شيء في TSV: تصبح
"Desk lamp, brass" Desk lamp, brass. - الخلية متعددة الأسطر تبقى قيمة واحدة. مع الاقتباس تمتد على عدة أسطر داخل علامتي الاقتباس؛ ومع التهريب تُكتب
Ships in 2 boxes\nfragile في سطر واحد. - تُكتب الأصفار في بداية القيم والمعرّفات الطويلة كما هي تمامًا: لا أنواع في TSV، فتبقى
00731 كما هي 00731. - مع التهريب يُكتب مسار Windows مثل
C:\temp بصيغة C:\\temp، فيستعيد القارئ الذي يفك التهريب القيمة الأصلية. - الصف الذي فيه قيم أكثر من صف العناوين يحصل على أعمدة إضافية باسم
Column 4 وColumn 5…؛ والصف الأقصر يُكمَّل بقيم فارغة. وتصبح العناوين الفارغة Column 3 والمكررة name (2).
حين يُحمَّل ملف TSV بشكل خاطئ
- تنقسم الصفوف في منتصفها عند التحميل. القارئ لا يفهم فواصل الأسطر داخل علامات الاقتباس. اختر تهريب بالشرطة المائلة العكسية \t \n (PostgreSQL) إذا كان يفك التهريب، أو استبدالها بمسافات (TSV صارم) إن لم يكن كذلك.
- تبدأ القيم بفاصلة عليا ('). هذا أثر الحماية من الصيغ في جداول البيانات. عطّلها عند الاستيراد إلى قاعدة بيانات أو برنامج نصي.
- يعرض جدول البيانات رموزًا بشرطة مائلة عكسية. تظهر في الخلية
\n أو \t لأن جداول البيانات لا تفك التهريب بالشرطة المائلة العكسية. استخدم وضع القيمة بين علامتي اقتباس (Excel وpandas) للملفات المخصصة لـExcel أو LibreOffice. - تنتهي البيانات كلها في عمود واحد. خُمِّن محدِّد المدخلات خطأً؛ اضبطه من إعدادات الاستيراد وافتح الملف من جديد.
الحدود والملفات الكبيرة
الملفات حتى 25 ميغابايت و100 ألف صف و250 عمودًا ومليوني خلية تُفتح مع معاينة مباشرة. أما الملفات الأكبر فتُحوَّل تدفقيًا: يُقرأ الملف مرتين على أجزاء، مرة لإيجاد أعرض سجل ومرة للكتابة، ويشمل الملف المنزَّل كل الصفوف بالناتج نفسه الذي كانت المعاينة ستعرضه. لا يتوفر نسخ لهذه الملفات، والحد الأقصى للناتج الواحد 4 غيغابايت.
في الوضع التدفقي يُفك ترميز الملف تلقائيًا (UTF-8، أو UTF-16 إذا بدأ بعلامة ترتيب البايت) ويُعدّ الصف الأول صف عناوين.
يجري التحويل في عامل خلفي داخل علامة التبويب هذه، ويوقفه زر إلغاء. ولتغيير المحدِّد مع الإبقاء على اقتباس CSV، استخدم تغيير فاصل CSV وترميزه؛ وللحصول على جدول يُلصق في التوثيق، استخدم CSV إلى Markdown.
مثال: قائمة طلبات بصيغة TSV
قائمة طلبات فيها فاصلة داخل علامتي اقتباس، وملاحظة من سطرين، وقيمة شبيهة بالصيغ، حُوّلت بالإعدادات الافتراضية (وضع القيمة بين علامتي اقتباس (Excel وpandas)، مع تفعيل الحماية من الصيغ؛ وتظهر بنهايات أسطر LF). ومع تهريب بالشرطة المائلة العكسية \t \n (PostgreSQL) تصبح الملاحظة Ships in 2 boxes\nfragile في سطر واحد، وتُكتب قيمة الصيغة دون علامات اقتباس.
id,product,note
00731,"Desk lamp, brass","Ships in 2 boxes
fragile"
00732,Cable tidy,"=HYPERLINK(""x"")"id product note
00731 Desk lamp, brass "Ships in 2 boxes
fragile"
00732 Cable tidy "'=HYPERLINK(""x"")"أسئلة وأجوبة
ما الفرق بين CSV وTSV؟
المحدِّد وأعرافه فقط. يفصل TSV الحقول بعلامة جدولة، فلا تحتاج الفواصل داخل القيم إلى علامات اقتباس. ويمنع تعريف IANA علامات الجدولة داخل الحقول، ولهذا تختلف الأدوات في طريقة كتابتها.
أي خيار أختار للأمر COPY في PostgreSQL؟
تهريب بالشرطة المائلة العكسية \t \n (PostgreSQL)، مع تعطيل الحماية من الصيغ. تستخدم الصيغة النصية في PostgreSQL علامة الجدولة محدِّدًا افتراضيًا، وتفك \t و\n و\r و\\. وتُحمَّل القيمة الفارغة سلسلة نصية فارغة، لأن علامة NULL الافتراضية في هذه الصيغة هي \N؛ أضِف NULL '' إلى خيارات COPY لتحميل القيم الفارغة على أنها NULL.
هل يمكن تحويل TSV إلى CSV؟
نعم: افتح ملف TSV في تغيير فاصل CSV وترميزه. يُكتشف محدِّد علامة الجدولة، ويمكن اختيار ناتج بفاصلة أو بفاصلة منقوطة. وتُقرأ رموز التهريب بالشرطة المائلة العكسية أحرفًا عادية دون فكها.