এক্সেল 2007 এ লাইন ব্রেক সহ সিএসভি আমদানি করা হচ্ছে


129

আমি এক্সেলের মধ্যে খোলার জন্য সিএসভি ফাইলে অনুসন্ধানের ফলাফল রফতানি করার জন্য একটি বৈশিষ্ট্যে কাজ করছি। ক্ষেত্রগুলির মধ্যে একটি হ'ল একটি ফ্রি-টেক্সট ক্ষেত্র, এতে লাইন ব্রেক, কমা, কোটেশন ইত্যাদি থাকতে পারে .এর বিরুদ্ধে লড়াই করার জন্য, আমি ক্ষেত্রটি ডাবল কোট (") এ গুটিয়ে রেখেছি।

যাইহোক, আমি যখন এক্সেল 2007 এ ডেটা আমদানি করি, উপযুক্ত ডিলিমিটারটি সেট করে পাঠ্য বাছাইকারীটিকে দ্বিগুণ উদ্ধৃতিতে সেট করি, লাইন ব্রেকগুলি লাইন ব্রেকগুলিতে এখনও নতুন রেকর্ড তৈরি করছে, যেখানে আমি সম্পূর্ণ পাঠ্য ক্ষেত্রটি একটিতে দেখতে আশা করব একক কোষ.

আমি সিআর / এলএফ (\ r \ n) এর পরিবর্তে কেবল সিআর (\ r) এবং আবার মাত্র এলএফ () n) দিয়ে প্রতিস্থাপন করার চেষ্টা করেছি, তবে ভাগ্য নেই।

অন্য কারও কি এই আচরণের মুখোমুখি হয়েছে এবং যদি তাই হয় তবে আপনি এটি কীভাবে ঠিক করেছিলেন?

টিআইএ,
-জে

সম্পাদনা:
সমস্যাটির নকল করতে আমি হাতে হাতে একটি দ্রুত ফাইল লিখেছি।

আইডি, নাম, বর্ণনা
"12345", "স্মিথ, জো", "আরে।
আমার নাম জো।"

আমি যখন এটি এক্সেল 2007 এ আমদানি করি, তখন আমি একটি শিরোনাম সারি এবং দুটি রেকর্ড সহ শেষ করি। লক্ষ্য করুন যে "স্মিথ, জো" তে কমাটি সঠিকভাবে পরিচালিত হচ্ছে। এটি কেবলমাত্র লাইন বিরতি যা সমস্যার সৃষ্টি করছে।


আমি নোটপ্যাড ++ এ সিএসভি ফাইলটি দেখেছি এবং সমস্ত কিছু সঠিক বলে মনে হচ্ছে। কমা সহ আমার অন্যান্য ক্ষেত্র রয়েছে এবং সেগুলি সঠিকভাবে আমদানি করা হচ্ছে। এটি কেবলমাত্র লাইন বিরতি যা সমস্যার সৃষ্টি করছে।
jeremyalan

4
আমার কাছে মাল্টি-লাইন ডেটা এবং এক্সেল সহ ইউটিএফ 8। সিএসভি ফাইলগুলি রয়েছে। আমি কেবল Google ডক্সে ফাইলটি আপলোড করে এটিকে একটি গুগল শিটে খোলার পরে, .xls ফাইল হিসাবে ডাউনলোড করে শেষ করেছি। আমার পক্ষে এইভাবে ভাল কাজ করে।
ক্রুজার্ম

উত্তর:


53

এক্সেল (এক্সপিতে কমপক্ষে অফিস 2007-এ) কোনও সিএসভি ফাইল ফাইল-> ওপেন মেনু থেকে খোলার মাধ্যমে বা এক্সপ্লোরারে ফাইলটিতে ডাবল-ক্লিক করে আমদানি করা হয়েছে কিনা তার উপর নির্ভর করে ভিন্ন আচরণ করতে পারে।

আমার কাছে একটি সিএসভি ফাইল রয়েছে যা ইউটিএফ -8 এনকোডিংয়ে রয়েছে এবং কয়েকটি ঘরে নতুন লাইন রয়েছে। যদি আমি এই ফাইলটি এক্সেলের ফাইল-> ওপেন মেনু থেকে খুলি, "আমদানি করা সিএসভি" উইজার্ড পপ আপ হয় এবং ফাইলটি সঠিকভাবে আমদানি করা যায় না: উদ্ধৃতিযুক্ত হওয়া সত্ত্বেও নিউলাইনগুলি একটি নতুন সারি শুরু করে। যদি আমি এক্সপ্লোরার উইন্ডোটিতে ডাবল ক্লিক করে এই ফাইলটি খুলি, তবে এটি উইজার্ডের হস্তক্ষেপ ছাড়াই সঠিকভাবে খোলে।


1
ডাবল ক্লিকের সাথে একই সেটিংস পেতে কীভাবে কোনও ধারণা?
মিশিগেল থ্যালেন

7
এটা সত্যি! কি অদ্ভুত.
ডেভিড

5
আপনি যদি জার্মান আঞ্চলিক সেটিংস ব্যবহার করেন তবে ডাবল ক্লিক করার জন্য আপনার
সিএসভিতে

3
এটা আমার জন্য কাজ করে নি. "," ডিলিমিটার হিসাবে এটি ডাবল-ক্লিকের মাধ্যমে একটি কলামে সমস্ত কিছু খুলল। সঙ্গে ";" ডিলিমিটার হিসাবে এটি একাধিক রেকর্ড হিসাবে আমদানি করা বহু-লাইন পাঠ্য ক্ষেত্রগুলি বাদে সঠিকভাবে আমদানি করা হয়েছিল। আমার এক্সেল 2010 আছে
আন্দ্রেজ আদামেঙ্কো

2
@ ইউজার 1859022 আমি হাঙ্গেরিয়ান লোকালের চেয়ে দ্বিগুণ করেছি। দশমিক বিভাজক হিসাবে কমা ব্যবহার করে এমন কোনও স্থানীয়
অবস্থানের

42

প্রস্তাবিত সমাধানগুলির কোনওোটাই আমার পক্ষে কাজ করেনি।

আসলে কী কাজ করে (কোনও এনকোডিং সহ):

সিএসভি-ফাইল থেকে ডেটা অনুলিপি করুন / পেস্ট করুন (সম্পাদক এ খুলুন), তারপরে "কলামগুলিতে পাঠ্য" সম্পাদনা করুন -> ঠিক আছে না।

পরবর্তী ট্যাবে যান এবং আবার কপি / পেস্ট করুন (আপনার ক্লিপবোর্ডে আপনি ইতিমধ্যে যা পেয়েছেন একই জিনিস) -> স্বয়ংক্রিয়ভাবে এখন কাজ করে।


2
আমার ক্ষেত্রে এটি একরকমভাবে কাজ করেছে: এটি সিএসভিকে একক রেকর্ডে সঠিকভাবে ভেঙে দিয়েছে তবে নতুন লাইনের অতীতের ক্ষেত্রের সমস্ত ডেটা সরিয়ে দিয়েছে।
লিলিয়েনথাল

1
এটি কাজ করেছে, এক্সেল থেকে সিএসভি আমদানির সময় কেন এটি কাজ করে না এমন কোনও ধারণা?
রাফায়েল সিস্তো

1
আমি নিশ্চিত করতে পারি যে এটি কাজ করে, আপনি এমনকি "কলামগুলিতে পাঠ্য" কমান্ডটি পুনর্বিবেচনা না করে বিভিন্ন শীটে আরও বেশি ডেটা পেস্ট করতে পারেন। আপনার বেশ কয়েকটি ফাইল আমদানির প্রয়োজন হলে এটি দরকারী।
অ্যালেক্স

1
এটি কেন কাজ করে না তবে সিএসভি খোলার বা এটি সমস্ত সঠিক সেটিংস সহ পাঠ্য ডেটা হিসাবে যুক্ত করা কার্যকর হয় না? বখশিশের জন্য ধন্যবাদ. অনুলিপি / আটকানো টিমের সাথে ডেটা আমদানি দলের সাথে কথা বলা দরকার!
alexGIS

2
পবিত্র বিষ্ঠা। এটি সত্যিই কাজ করে। এবং কেন্ডা বোধগম্য হয় কেন। একটি "কলামে পাঠ্য" তৈরি করার সময় এক্সেল সেটিংসের কথা মনে রাখে এবং এটি স্বয়ংক্রিয়ভাবে রূপান্তরিত হবে। যখন পাঠ্যটি ইতিমধ্যে সারিগুলিতে বিভাজিত হয়েছে তখন এটি সারি সারি সারি দেখায় এবং নতুন লাইন উপেক্ষা করবে ignore আমি মনে করি যে আচরণটি রাখতে বা ডেটা পুনরায় ছাড়ার জন্য এমএসের একটি চেকবক্স ওয়েদার অন্তর্ভুক্ত করা উচিত। আমার কিছু যায় আসে না ... ... যদি
ফ্রিকিং

28

আপনি যদি ম্যানুয়ালি এটি করে থাকেন তবে আপনার CSV আমদানি করতে LibreOffice ডাউনলোড করুন এবং LibreOffice ক্যালক ব্যবহার করুন। আমি এক্সেলের যে কোনও সংস্করণ চেষ্টা করেছি এর চেয়ে এটি স্টাফের মতো আরও ভাল কাজ করে এবং আপনার এক্সেলের পরে ট্রান্সফার করার প্রয়োজন হলে এটি প্রয়োজনীয় হিসাবে এটি এক্সএলএস বা এক্সএলএসএক্সে সংরক্ষণ করতে পারে।

তবে আপনি যদি এক্সেলের সাথে আটকে থাকেন এবং আরও ভাল সমাধানের প্রয়োজন হয় তবে একটি উপায় বলে মনে হচ্ছে। এটি স্থানীয়ভাবে নির্ভরশীল বলে মনে হচ্ছে (যা আমার বিনীত মতে নির্বোধ বলে মনে হচ্ছে)। আমার এক্সেল 2007 নেই, তবে আমার এক্সেল 2010 রয়েছে এবং দেওয়া উদাহরণটি:

ID,Name,Description
"12345","Smith, Joe","Hey.
My name is Joe."

কাজ করে না আমি এটি নোটপ্যাডে লিখেছি এবং সংরক্ষণ করুন ... হিসাবে বেছে নিয়েছি এবং সংরক্ষণ বোতামের পাশে আপনি এনকোডিংটি চয়ন করতে পারেন। আমি প্রস্তাবিত ইউটিএফ -8 বেছে নিয়েছি, তবে ভাগ্য নেই with যদিও সেমিকোলনে কমা পরিবর্তন করা আমার পক্ষে কাজ করেছিল। আমি অন্য কিছু পরিবর্তন করিনি, এবং এটি ঠিক কাজ করেছে। সুতরাং আমি এর মতো দেখতে উদাহরণটি পরিবর্তন করেছি এবং নোটপ্যাডে সংরক্ষণের সময় ইউটিএফ -8 এনকোডিংটি বেছে নিয়েছি:

ID;Name;Description
"12345";"Smith, Joe";"Hey.
My name is Joe."

কিন্তু একটি ধরা আছে! যদি আপনি সিএসভি ফাইলটিকে এক্সলে খুলতে ডাবল ক্লিক করেন তবে এটির একমাত্র উপায় এটি কাজ করে। আমি যদি পাঠ্য থেকে ডেটা আমদানির চেষ্টা করি এবং এই সিএসভিটি চয়ন করি তবে এটি এখনও উদ্ধৃত নিউলাইনগুলিতে ব্যর্থ।

তবে আরও একটি ধরা আছে! ওয়ার্কিং ফিল্ড বিভাজক (মূল উদাহরণে কমা, আমার ক্ষেত্রে সেমিকোলন) সিস্টেমের আঞ্চলিক সেটিংসের উপর নির্ভর করে বলে মনে হয় (নিয়ন্ত্রণ প্যানেলের অধীনে সেট -> অঞ্চল এবং ভাষা)। নরওয়েতে কমা হ'ল দশমিক বিভাজক। এক্সেল মনে হয় এই চরিত্রটিকে এড়িয়ে চলবে এবং পরিবর্তে সেমিকোলনটি পছন্দ করবে। আমার ইউকে ইংলিশ স্থানীয় লোকালে সেট করা অন্য কম্পিউটারে অ্যাক্সেস রয়েছে এবং সেই কম্পিউটারে কমা বিভাজক সহ প্রথম উদাহরণটি ঠিক কাজ করে (কেবলমাত্র ডাবলক্লিকের ক্ষেত্রে), এবং সেমিকোলনযুক্ত একটিটি আসলে ব্যর্থ হয়! আন্তঃব্যবহারের জন্য এত কিছু। আপনি যদি এই সিএসভি অনলাইনে প্রকাশ করতে চান এবং ব্যবহারকারীদের এক্সেল থাকতে পারে তবে আমার ধারণা, আপনাকে উভয় সংস্করণ প্রকাশ করতে হবে এবং লোকেরা কোন ফাইলটি সারিগুলির সঠিক নম্বর দেয় তা পরীক্ষা করে দেখার পরামর্শ দিন।

কাজেই এটি পেতে আমি যে সমস্ত বিবরণ সংগ্রহ করতে সক্ষম হয়েছি সেগুলি হ'ল:

  1. ফাইলটি অবশ্যই একটি বিওএম-এর সাথে ইউটিএফ -8 হিসাবে সংরক্ষণ করতে হবে, আপনি যখন ইউটিএফ -8 নির্বাচন করেছেন তখন নোটপ্যাড যা করে। আমি বিওএম ছাড়াই ইউটিএফ -8 চেষ্টা করেছি (নোটপ্যাড ++ এ সহজেই স্যুইচ করা যায়) তবে ডকুমেন্টটিতে ডাবল-ক্লিক করা ব্যর্থ হয়।
  2. আপনাকে অবশ্যই একটি কমা বা অর্ধিকোলন বিভাজক ব্যবহার করতে হবে, তবে আপনার আঞ্চলিক সেটিংসে দশমিক বিভাজক নয়। সম্ভবত অন্যান্য চরিত্রগুলি কাজ করে তবে আমি জানি না কোনটি।
  3. আপনাকে অবশ্যই এমন ক্ষেত্রগুলি উদ্ধৃত করতে হবে যাতে "অক্ষর সহ একটি নতুন লাইন থাকে।
  4. আমি পাঠ্য ক্ষেত্রে এবং রেকর্ড বিভাজক হিসাবে উইন্ডোজ লাইন-এন্ডিংস (\ r \ n) উভয়ই ব্যবহার করেছি that
  5. ফাইলটি খোলার জন্য আপনাকে অবশ্যই ডাবল-ক্লিক করতে হবে, পাঠ্য থেকে ডেটা আমদানি কাজ করে না।

আশা করি এটি কাউকে সাহায্য করবে।


এছাড়াও, @sdplus দ্বারা উল্লিখিত কৌতুকটি কার্যকর বলে মনে হচ্ছে! আমার মনে হয় যা হয় তা হ'ল আপনি যখন প্রথম "কলামে টেক্সট" চালচলন পেস্ট করেন এবং এক্সেল-এ উদ্ধৃতি এবং ফিল্ড বিভাজক জিনিসগুলি কনফিগার করেন। দ্বিতীয়বার আপনি পেস্ট করুন, এটি এই কনফিগারেশনটি ব্যবহার করে এবং কনফিগারেশনের উপর ভিত্তি করে ডেটা সঠিকভাবে কলামগুলিতে বিভক্ত করে। তবে এটি একটি খুব ম্যানুয়াল পদ্ধতি বলে মনে হচ্ছে।
কেতিল

হ্যাঁ, প্রতিবার আপনি যখন পাঠ্য আমদানি করেন বা কলামে কোনও পাঠ্য করেন, তখন আপনি পুনরায় স্বীকার করবেন যে কীভাবে অনুলিপি / পেস্ট দেওয়া সেশনে কাজ করবে। এমনকি আপনি এক্সেল বন্ধ না করা পর্যন্ত এটি আপনার তৈরি করা নতুন ওয়ার্কবুকগুলিতে প্রয়োগ করা হয়। এটি হতাশাজনকও হতে পারে। আপনি একবার আমদানির জন্য প্রদত্ত বিভাজকটি ব্যবহার করলে, এটি আপনার পাঠ্যকে আলাদা করে দেবে এমনকি আপনি কেবল কোনও ঘরে কোনও বাক্য আটকে দিতে চাইলেও। আপনাকে বিভাজক হিসাবে ট্যাব দিয়ে আমদানি পুনরায় করতে হবে, বা এটি থামাতে এক্সেল পুনরায় চালু করতে হবে।
রোবটিক

আপনার কৌশলটি সত্যিই কাজ করে বলে মনে হচ্ছে। তবে দেখে মনে হচ্ছে সমাধানটির সাথে সেমিকোলনের কোনও যোগসূত্র নেই। সমস্যাটি হচ্ছে, আঞ্চলিক সেটিংসের উপর নির্ভর করে এক্সেল সিএসভি ফাইলগুলিকে আলাদাভাবে আচরণ করে। আমি জার্মানি থেকে এসেছি, এবং আমার কাছে এক্সেল থেকে সিএসভি ফাইলগুলির সর্বদা কমাগুলির পরিবর্তে সেমিকোলন থাকে (এর কারণ হ'ল জার্মানিতে দশমিক পৃথকটি বিন্দুর পরিবর্তে কমা হয়)। আসল সমাধানটি মনে হচ্ছে, এক্সেল সিএসভি ফাইলগুলি অন্য সমস্ত পাঠ্য ফাইলের চেয়ে সম্পূর্ণ আলাদা লোড করে। সুতরাং সিএসভি ফাইলগুলির মধ্যে উদ্ধৃতিগুলির মধ্যে লাইন বিরতি রয়েছে বলে মনে হচ্ছে এটি কাজ করে। অন্য সমস্ত পাঠ্য ফাইলগুলি তা করে না।
মার্টিনি বিয়ানো 13

@ মার্টিনি, হ্যাঁ, আমার কাছে নরওয়েজিয়ান এক্সেল রয়েছে এবং আমরা দশমিক বিভাজক হিসাবে কমাও ব্যবহার করি, সুতরাং আমি এটি উল্লেখ করেছি যে এটি কীভাবে আঞ্চলিক সেটিংসের উপর নির্ভর করে (যদিও আমি এটিকে স্থানীয় হিসাবে উল্লেখ করেছি)। স্পষ্টতার জন্য সম্ভবত আমার পুনর্বিবেচনা করা উচিত।
কেতিল

এই উত্তর অঞ্চলে সমস্ত লোক যেখানে কমা দশমিক বিভাজক জন্য। নোট করুন যে এই অঞ্চলগুলির জন্য, এক্সেল সেমিকোলনটি সূত্র আর্গুমেন্ট বিভাজক ( =FOO(1;2)পরিবর্তে =FOO(1,2)) হিসাবেও ব্যবহার করে , তবে স্পষ্টতই এটি ভুল যে এক্সেল এটিকে কোনও ফাইল ফর্ম্যাট পার্সারে প্রয়োগ করে (যা অন্যান্য প্রোগ্রাম লোকেলের উপর নির্ভর করে একটি স্ট্যান্ডার্ড ফাইল ফর্ম্যাটকে পার্স করে ??? )
লীমস

25

আমি শেষ পর্যন্ত সমস্যা খুঁজে পেয়েছি!

দেখা যাচ্ছে যে আমরা ASCII বা UTF-8 এর পরিবর্তে ইউনিকোড এনকোডিং ব্যবহার করে ফাইলটি লিখছিলাম। ফাইলস্ট্রিমে এনকোডিং পরিবর্তন করা সমস্যার সমাধান বলে মনে হচ্ছে।

আপনার সকল পরামর্শের জন্য সবাইকে ধন্যবাদ!


29
ASCII এনকোডিংটি আমার (যদিও ম্যাকোএসে) সমস্যাটি ঠিক করেছে বলে মনে হচ্ছে না, এবং আমার একটি শীর্ষস্থান নেই এবং আমার ক্ষেত্রটি উদ্ধৃত হয়েছে। ঠিক একই ডকটি গুগল ডক্সে সূক্ষ্ম আমদানি করে। কত হতাশার। বিটিডাব্লু, "ইউনিকোড" এনকোডযুক্ত পাঠ্য ফাইলের মতো জিনিস নেই। এটি ইউনিকোডের একটি বাস্তবায়ন হতে হবে (ইউটিএফ -8, ইউটিএফ -16, ইউটিএফ -32, ইত্যাদি)
বেন

11
সমাধানের জন্য ধন্যবাদ। উত্তরটি কী তা আমি এখনও আগ্রহী ছিলাম তাই আমি এক্সেলের একটি লাইন ব্রেক সহ একটি সিএসভি তৈরি করার চেষ্টা করেছিলাম এবং এটি কী সংরক্ষণ করেছিল তা দেখার জন্য। আমি সন্ধান করেছি এক্সেল কোনও ঘরে নতুন লাইনের জন্য কেবল একটি লাইন ফিড ব্যবহার করে। যদি আমি নোটপ্যাডে একই সিএসভি তৈরির চেষ্টা করি তবে এটি লাইন বিরতির জন্য একটি লাইন ফিড + ক্যারেজ রিটার্ন ব্যবহার করবে। সুতরাং একটি একক কক্ষে লাইন বিরতির জন্য, নিশ্চিত করুন যে এটি কেবল একটি লাইন ফিড (এলএফ বা \ n) ব্যবহার করছে এবং ক্যারিজ রিটার্ন নয় (সিআর বা \ r)। এক্সেল উভয় ব্যবহার করে একটি সারি বন্ধ করে দেয়।
xr280xr

1
এএসসিআইআই এনকোডিংটি আমার পক্ষে সমস্যাটি ঠিক করে নি - এক্সেল 2000, উইন্ডোজ 7.
ক্রিসজেজে

1
ম্যাকিনটোস-এ ওএস এক্সের জন্য, "উইন্ডোজ কমা পৃথকীকরণ (সিএসভি)" হিসাবে সংরক্ষণ করুন। এটি লাইন ব্রেকগুলির পরিবর্তে নতুন লাইনগুলি যুক্ত করে। এটি "স্পেশালিটি ফর্ম্যাটস" এর অধীনে ফর্ম্যাটগুলির জন্য ড্রপ ডাউন মেনুতে তালিকাবদ্ধ হবে।
টাকো

কোন ইউনিকোড এনকোডিং ব্যবহার করা উচিত (UTF-8, UTF-16)?
আন্দ্রেজ আদামেঙ্কো

7

সংক্ষিপ্ত উত্তর

নিউলাইন / লাইনফিড অক্ষরগুলি সরিয়ে ফেলুন ( \nনোটপ্যাড ++ সহ)। এক্সেল এখনও \rরেকর্ড পৃথক করতে ক্যারেজ রিটার্ন চরিত্র ( ) স্বীকৃতি দেবে ।

দীর্ঘ উত্তর

উল্লিখিত হিসাবে নতুন লাইনের অক্ষরগুলি সিএসভি ক্ষেত্রগুলির মধ্যে সমর্থিত তবে এক্সেল সর্বদা এগুলিকে কৃপণভাবে পরিচালনা করে না। আমি তৃতীয় পক্ষের সিএসভির সাথে একই ধরণের সমস্যার মুখোমুখি হয়েছিলাম যার মধ্যে সম্ভবত এনকোডিংয়ের সমস্যা ছিল তবে এনকোডিং পরিবর্তনগুলির সাথে উন্নতি হয়নি।

আমার জন্য যা কাজ করেছে তা সমস্ত নিউলাইন অক্ষর ( \n) মুছে ফেলছিল । এটি একক রেকর্ডে ক্ষেত্রগুলি ভেঙে যাওয়ার প্রভাব ফেলে ধরে নিয়েছে যে আপনার রেকর্ডগুলি ক্যারেজ রিটার্ন এবং একটি নতুন লাইন (সিআর / এলএফ) এর সংমিশ্রণ দ্বারা পৃথক করা হয়েছে। এক্সেল তারপরে ফাইলটি যথাযথভাবে আমদানি করবে এবং ক্যারেজ রিটার্ন দ্বারা নতুন রেকর্ডগুলি সনাক্ত করবে।

স্পষ্টতই একটি ক্লিনার সমাধান হ'ল প্রথমে \r\nএকটি অস্থায়ী চরিত্রের সংমিশ্রণ সহ নতুন নিউলাইনগুলি ( ) প্রতিস্থাপন করা হয়, নতুন লাইনের ( \n) আপনার পছন্দের পৃথকীকরণের চরিত্রের সাথে প্রতিস্থাপন করা হয় (উদাহরণস্বরূপ একটি সেমিকোলন ফাইলে কমা) এবং তারপরে অস্থায়ী অক্ষরগুলি আবার যথাযথ নিউলাইনগুলির সাথে প্রতিস্থাপন করা হয়।


1
আমার বিপরীত পরিস্থিতি ছিল: \nলাইন এবং \r\nঅভ্যন্তরের মানগুলির মধ্যে। সবেমাত্র নোটপ্যাড ++ এ ছিনিয়ে নিয়েছে।
প্রথম

5

জে অ্যাশলির মন্তব্যে +1। আমিও এই সমস্যায় পড়েছি। দেখা যাচ্ছে যে এক্সেলের প্রয়োজন:

  • উদ্ধৃত স্ট্রিংয়ে একটি নতুন লাইন অক্ষর ("\ n")

  • প্রতিটি সারিটির মাঝে একটি ক্যারেজ রিটার্ন এবং নিউলাইন।

যেমন "টেস্ট", "মাল্টলাইন আইটেম multi n মাল্টলাইন আইটেম" \ r \ n "টেস্ট 2", "মাল্টলাইন আইটেম multi n মাল্টলাইন আইটেম" \ r \ n

আমি প্রতিটি সারিটি সঠিকভাবে ডিলিট করতে এবং কেবল স্ট্রিংয়ে নতুনলাইনগুলি ব্যবহার করতে নোটপ্যাড ++ ব্যবহার করি। ফাঁকা এক্সেল ডকটিতে মাল্টলাইন এন্ট্রি তৈরি করে এবং নোটপ্যাড ++ এ সিএসভি খোলার মাধ্যমে এটি আবিষ্কার করা হয়েছে।


এটি কেবলমাত্র আমার জন্য
একলাইনলাইন

4

যদি ক্ষেত্রটিতে একটি শীর্ষস্থানীয় স্থান থাকে তবে এক্সেল পাঠ্য বাছাইকারী হিসাবে ডাবল উদ্ধৃতিটিকে উপেক্ষা করে। সমাধানটি হ'ল কমা (ক্ষেত্র বিভাজক) এবং ডাবল-কোটের মধ্যবর্তী নেতৃস্থানীয় স্থানগুলি নির্মূল করা। উদাহরণ স্বরূপ:

ভগ্ন:
নাম, শিরোনাম, বিবরণ
"জন", "মিঃ", "আমার বিশদ বিবরণ"

কাজ করা:
নাম, শিরোনাম, বিবরণ
"জন", "মিঃ।", "আমার বিশদ বিবরণ"


2
আমি সম্মত হই, তবে আমার আউটপুটে কোনও শীর্ষস্থান নেই। কোন ধারনা?
জেরেমায়ালান

আমাদের লাইনটি ভাঙা দরকার :(
লুক

4

গুগল শিট ব্যবহার করুন এবং সিএসভি ফাইল আমদানি করুন।

তারপরে আপনি এক্সেলে এটি ব্যবহার করতে রফতানি করতে পারেন


1
ভালো পরামর্শ! আপনি যদি নিজের সিএসভি কোনও তৃতীয় পক্ষের পরিষেবাতে আপলোড করতে (যেমন গোপনীয় গোপনীয় ডেটা) ঠিক করেন তবে এটি সর্বাধিক সুবিধাজনক রূপান্তর পদ্ধতি। নোট করুন যে আমদানিতে আপনাকে নিজেই ডিলিমিটার সেট করতে হতে পারে। এটি সঠিকভাবে প্রদর্শন করার জন্য আপনাকে ফলাফলের এক্সেল ফাইলে ঘরের আকার সামঞ্জস্য করতে হতে পারে।
m000

ব্রাউজারে অফিস 365 এ এক্সেলের সাথেও কাজ করে। ডেস্কটপ এক্সেল অ্যাপ্লিকেশন (এই পৃষ্ঠাটি থেকে সর্বাধিক পরামর্শ দেওয়ার চেষ্টা করা) সহ কক্ষের ভিতরে লাইন ব্রেকগুলি সহ আমি কোনও সিএসভি সঠিকভাবে খুলতে পারিনি, তবে অফিস ডটকমের এক্সেল এটি সঠিকভাবে খুলতে পারে।
জর্জি ডাব্লু

3

যদি কেউ এই থ্রেড জুড়ে হোঁচট খাচ্ছে এবং এখানে একটি সুনির্দিষ্ট উত্তর খুঁজছেন তবে যায় (লাইব্রোফিসের উল্লেখ করা ব্যক্তির কৃতিত্ব:

1) LibreOffice ইনস্টল করুন 2) ক্যালক খুলুন এবং ফাইল আমদানি করুন 3) আমার টেক্সট ফাইলটিতে ক্ষেত্রগুলি পৃথক করা হয়েছিল এবং অক্ষর ক্ষেত্রগুলি "4) এ ওডিএস ফাইল হিসাবে সংরক্ষণ করুন 5) এক্সেল 6 এ ওডিএস ফাইল খুলুন)। Xls (x) হিসাবে সংরক্ষণ করুন )) হয়ে গেছে 8) এটি আমার পক্ষে নিখুঁতভাবে কাজ করেছে এবং আমাকে বিগটাইম বাঁচিয়েছে!


3
ওডিএস হিসাবে সংরক্ষণের দরকার নেই,
লাইব্রোফিস

2

নোটপ্যাড ++ এ আটকান, এএনএসআইতে এনকোডিং> এনকোড নির্বাচন করুন, সমস্তটি আবার অনুলিপি করুন এবং এক্সেলের মধ্যে পেস্ট করুন :)


2

আমারও একই সমস্যা ছিল। আমার মাইএসকিউএলে কিছু টুইটার ডেটা ছিল। ডেটাতে ডেটা সহ লাইন ফিড (এলএফ বা \ n) ছিল। আমার মাইএসকিউএল ডেটা এক্সেলে রফতানি করার প্রয়োজন ছিল। এলএফ আমার সিএসভি ফাইলের আমদানি নিয়ে গোলমাল করছে। সুতরাং আমি নিম্নলিখিতটি করেছি -

1. From MySQL exported to CSV with Record separator as CRLF
2. Opened the data in notepad++ 
3. Replaced CRLF (\r\n) with some string I am not expecting in the Data. I used ###~###! as replacement of CRLF
4. Replaced LF (\n) with Space
5. Replaced ###~###! with \r\n, so my record separator are back.
6. Saved and then imported into Excel

দ্রষ্টব্য- সিআরএলএফ বা এলএফ প্রতিস্থাপনের সময় অতিক্রমিত চেক করতে ভুলবেন না (\ n, \ r, ... t ... চেকবক্স [ডায়ালগ বাক্সের বাম দিকে নীচে দেখুন)


2

ফরাসি আঞ্চলিক সেটিংস সহ উইনএক্সপিতে এক্সেল 2010 এর সাথে আমার অভিজ্ঞতা

  • আপনার আমদানিকৃত সিএসভির বিভাজকটি অবশ্যই আপনার আঞ্চলিক সেটিংসের তালিকা বিভাজকের সাথে সামঞ্জস্য করবে (; আমার ক্ষেত্রে)
  • আপনাকে অবশ্যই এক্সপ্লোরার থেকে ফাইলটিতে ডাবল ক্লিক করতে হবে। এটি এক্সেল থেকে খুলবেন না

1

সিএসভিগুলির সাথে কাজ করার সময় এক্সেল অবিশ্বাস্যভাবে ভেঙে যায়। LibreOffice একটি আরও ভাল কাজ করে। সুতরাং, আমি এটি জানতে পেরেছি:

  • ফাইলটি অবশ্যই ইউটিএফ -8 এ বিওএম এর সাথে এনকোড করা উচিত, সুতরাং নীচের সমস্ত পয়েন্টের জন্য এটি বিবেচনা করুন
  • ফাইল এক্সপ্লোরার থেকে এটি খোলার মাধ্যমে এখন পর্যন্ত সর্বোত্তম ফলাফল অর্জন করা হয়েছে
  • আপনি যদি এটি এক্সেলের মধ্যে থেকে খুলেন তবে দুটি সম্ভাব্য ফলাফল রয়েছে:
    • যদি এর কেবলমাত্র ASCII অক্ষর থাকে তবে এটি সম্ভবত কাজ করবে
    • এটিতে যদি ASCII বিহীন অক্ষর থাকে তবে তা আপনার লাইন বিরতিতে গোলমাল করবে
  • এটি ওএসের আঞ্চলিক সেটিংসে কনফিগার করা দশমিক বিভাজকের উপর অত্যধিক নির্ভরশীল বলে মনে হচ্ছে, সুতরাং আপনাকে সঠিকটি নির্বাচন করতে হবে
  • আমি বাজি ধরব যে এটি ওএস এবং অফিস সংস্করণের উপর নির্ভর করে আলাদা আচরণ করতে পারে

আপনি দৃser়ভাবে বলছেন যে লিব্রেঅফিস এক্সেলের চেয়ে আরও ভাল গয়েসর , তাই না? এক্সেল পাঠ্য ফাইলগুলি আমদানির সময় সমস্ত সঠিক প্রশ্ন জিজ্ঞাসা করে, যদি না আপনি এটি অনুমান করতে না বলেন।
টম ব্লডজেট 18'19

1
ধন্যবাদ! এটি আমাকে নোটপ্যাড ++ দ্বারা "বিওএম ছাড়াই ইউটিএফ -8" থেকে "বিওএমের সাথে ইউটিএফ -8" (মেনুতে কেবল সাধারণ "ইউটিএফ -8") রূপান্তর করতে সহায়তা করে। তারপরে আমি এটি এক্সপ্লোরার থেকে সবেমাত্র খুলেছি এবং এক্সেল এটিকে সঠিক উপায়ে কোষের ভিতরে সঠিক চিহ্ন এবং সঠিক লাইন বিরতি দিয়ে দেখিয়েছে। যখন আমি এটিকে ডিফল্টরূপে "বিএমএম ছাড়াই ইউটিএফ -8" খুলি তখন এক্সপ্লোরার এক্সেলের আমদানি করা লাইনটি সঠিকভাবে ব্রেক হয় তবে ল্যাটিন-চিহ্নগুলিকে ভুল উপায়ে প্রদর্শন করে। যদি আমি এটি এক্সেল থেকে খুলি, এটি সঠিক উপায়ে এনকোডিং দেখিয়েছে, তবে লাইন ব্রেকগুলি সহ্য করতে পারে নি।
সের্গেই বেলোগ্লাজভ

1

সংক্ষিপ্ত বিবরণ

মূল পোস্টের প্রায় 10 বছর পরে, এক্সেল CSV ফাইলগুলি আমদানিতে উন্নত হয়নি। তবে, আমি দেখতে পেয়েছি যে এটি এইচটিএমএল টেবিলগুলি আমদানিতে আরও ভাল। সুতরাং, কেউ সিএসভিকে এইচটিএমএল রূপান্তর করতে পাইথন ব্যবহার করতে পারে এবং তারপরে ফলাফলটি এইচটিএমএলকে এক্সেলে আমদানি করতে পারে।

এই পদ্ধতির সুবিধাগুলি হ'ল: (ক) এটি নির্ভরযোগ্যভাবে কাজ করে, (খ) আপনার ডেটা কোনও তৃতীয় পক্ষের পরিষেবাতে প্রেরণ করার প্রয়োজন নেই (যেমন গুগল শিটস), (গ) অতিরিক্ত কোনও "ফ্যাট" ইনস্টলেশন প্রয়োজন নেই (লিবার অফিস, সংখ্যা ইত্যাদি), (ঘ) সিআর / এলএফ অক্ষর এবং বিওএম চিহ্নিতকারীদের সাথে মধ্যস্থতার চেয়ে উচ্চতর স্তর, (ঙ) লোকাল সেটিংসের সাথে গলগল করার দরকার নেই।

ধাপ

পাইথন 3 ইনস্টল হওয়া অবধি নীচের পদক্ষেপগুলি যে কোনও ব্যাশের মতো শেলটিতে চালানো যেতে পারে। যদিও পাইথন সরাসরি সিএসভি পড়ার জন্য ব্যবহার করা যেতে পারে, সিএসভিকিটটি জেএসএনে অন্তর্বর্তী রূপান্তর করতে ব্যবহৃত হয়। এটি আমাদের পাইথন কোডে সিএসভি জটিলতা মোকাবেলা করতে এড়াতে সহায়তা করে।

প্রথমে নিম্নলিখিত স্ক্রিপ্টটি সংরক্ষণ করুন json2html.py। স্ক্রিপ্টটি স্টিডিন থেকে একটি জেএসএন ফাইল পড়ে এবং এটি একটি HTML টেবিল হিসাবে ফেলে দেয়:

#!/usr/bin/env python3
import sys, json, html

if __name__ == '__main__':
    header_emitted = False
    make_th = lambda s: "<th>%s</th>" % (html.escape(s if s else ""))
    make_td = lambda s: "<td>%s</td>" % (html.escape(s if s else ""))
    make_tr = lambda l, make_cell: "<tr>%s</tr>" % ( "".join([make_cell(v) for v in l]) )
    print("<html><body>\n<table>")
    for line in json.load(sys.stdin):
        lk, lv = zip(*line.items())
        if not header_emitted:
            print(make_tr(lk, make_th))
            header_emitted = True
        print(make_tr(lv, make_td))
    print("</table\n</body></html>")

তারপরে, ভার্চুয়াল পরিবেশে সিএসভিকিট ইনস্টল csvjsonকরুন এবং আমাদের স্ক্রিপ্টে ইনপুট ফাইলটি ফিড করতে ব্যবহার করুন। -Iযুক্তির সাহায্যে সেল টাইপ অনুমান করা নিষ্ক্রিয় করা ভাল ধারণা :

$ virtualenv -p python3 pyenv
$ . ./pyenv/bin/activate
$ pip install csvkit
$ csvjson -I input.csv | python3 json2html.py > output.html

এখন output.htmlএক্সলে আমদানি করা যায়। কক্ষগুলিতে লাইন বিরতি সংরক্ষণ করা হবে।

Allyচ্ছিকভাবে, আপনি আপনার পাইথন ভার্চুয়াল পরিবেশটি পরিষ্কার করতে চাইতে পারেন:

$ deactivate
$ rm -rf pyenv

1

এটি এক্সেল 2016 এর জন্য:

এক্সেল উইজার্ডের সাহায্যে CSV ফাইলের মধ্যে লাইন ব্রেকগুলির ক্ষেত্রে একই সমস্যা ছিল।

এর পরে আমি "নতুন প্রশ্ন" বৈশিষ্ট্যটি দিয়ে চেষ্টা করেছিলাম: ডেটা -> নতুন প্রশ্ন -> ফাইল থেকে -> সিএসভি থেকে -> ফাইলটি চয়ন করুন -> আমদানি -> লোড

এটি পুরোপুরি কাজ করছিল এবং একই সমস্যা রয়েছে এমন আপনার সকলের জন্য খুব দ্রুত কাজ করা।


0

কেবলমাত্র আমার জন্য কী কাজ করেছে, এক্সেলের মধ্যে আমদানি করে সরাসরি সরবরাহ করা হয়েছিল যে সিএসভি ফর্ম্যাট পরিবর্তে পাঠ্য বিন্যাস হিসাবে আমদানি করা হয়েছে। / M


0

কেবল লাইনব্রেক সহ কক্ষগুলি সহ একটি নতুন শীট তৈরি করুন, সিএসভিতে এটি সংরক্ষণ করুন এবং এমন একটি সম্পাদকের সাথে এটি খুলুন যা লাইন অক্ষরের শেষ দেখতে পারে (নোটপ্যাড ++ এর মতো)। এটি করার মাধ্যমে আপনি লক্ষ্য করবেন যে একটি ঘরে একটি লাইনব্রেক এলএফ দিয়ে কোড করা হয়েছে যখন একটি "আসল" লাইনের শেষটি সিআর এলএফ সহ কোড is ভাল, এখন আপনি কীভাবে এক্সেলের জন্য একটি "সঠিক" সিএসভি ফাইল তৈরি করবেন তা জানেন know


0

আমারও এই সমস্যাটি ছিল: উদ্বোধনী স্ট্রিংগুলিতে এলএফ সহ সিএসভি ফাইল (কমা সীমাবদ্ধ, ডাবল উদ্ধৃতি সীমাবদ্ধ স্ট্রিং)। এগুলি স্কয়ার ফাইলগুলি ডাউনলোড করা হয়েছিল। আমি ডেটা আমদানি করেছিলাম তবে পাঠ্য ফাইল হিসাবে আমদানির পরিবর্তে, "এইচটিএমএল থেকে" আমদানি করেছি। এবার এটি উদ্ধৃত স্ট্রিংগুলিতে এলএফ এর উপেক্ষা করেছে।


0

এটি ম্যাকের উপর কাজ করেছে, সিএসভি ব্যবহার করে এবং এক্সেলে ফাইলটি খোলার জন্য।

সিএসভি ফাইল লিখতে পাইথন ব্যবহার করে।

ডেটা = '"সেল a1 \ r ঘরে প্রথম রেখা ঘর 1 এ 1 \ r তৃতীয় লাইন", "সেল বি 1", "সেল সি 1-র 1 ম লাইন, সেল সি 1-তে প্রথম লাইন" \ n "প্রথম লাইন ঘর a2 "\ n '

file.write (তথ্য)


0

MacOS এ নম্বর ব্যবহার করার চেষ্টা করুন

আপনার যদি ম্যাক ওএসে অ্যাক্সেস থাকে তবে আমি দেখতে পেয়েছি যে অ্যাপল স্প্রেডশিট নম্বরগুলি এক্সেল পরিচালনা করতে পারে না এমন একটি জটিল মাল্টি-লাইন সিএসভি ফাইল আনপিক করার একটি ভাল কাজ করে। কেবল .csvনাম্বার দিয়ে ওপেন করুন এবং তারপরে এক্সেলে এক্সপোর্ট করুন


0

আমার ক্ষেত্রে নোটপ্যাড ++ এ সিএসভি খোলার এবং SEP=","প্রথম লাইন হিসাবে যুক্ত করা আমাকে লাইন ব্রেক সহ সিএসভি খুলতে এবং সমস্যা ছাড়াই এক্সেলের মধ্যে ইউটিএফ -8 খুলতে দেয়


0

বিভাজককে কমা (,) এর পরিবর্তে TAB (\ t) দিয়ে প্রতিস্থাপন করুন। তারপরে আপনার সম্পাদক (নোটপ্যাড ইত্যাদি) ফাইলটি খুলুন, সেখান থেকে সামগ্রীটি অনুলিপি করুন, তারপরে এটি এক্সেল ফাইলে পেস্ট করুন।


বড় ফাইলগুলিতে এটি চেষ্টা করুন :)
চুক্কো

-1

ডাবল কোটের ভিতরে লাইন ব্রেকগুলি সিএসভি স্ট্যান্ডার্ড অনুসারে পুরোপুরি সূক্ষ্ম। এক্সেলের মধ্যে লাইন বিরতির পার্সিং তালিকার বিভাজকের ওএস সেটিংয়ের উপর নির্ভর করে:

  1. উইন্ডোজ: আপনাকে তালিকা বিভাগের কমাতে সেট করতে হবে (অঞ্চল এবং ভাষা »ফর্ম্যাটস» উন্নত) উত্স: /superuser/238944/how-to-for-excel-to-open-csv-files- সঙ্গে-ডেটা-ব্যবস্থা-ইন-কলাম # উত্তর-633302

  2. ম্যাক: অঞ্চলটি মার্কিন যুক্ত করতে হবে (তারপরে ম্যানুয়ালি আপনার পছন্দগুলিতে অন্য সেটিংস ফিরিয়ে আনতে) উত্স: https://answers.microsoft.com/en-us/mac/forum/macoffice2016-macexcel/line-separator-comma -সেমিক্লন-ইন-এক্সেল -2016-for / 7db1b1a0-0300-44ba-ab9b-35d1c40159c6 (নিউম্যানলির উত্তর দেখুন)

আবার চেষ্টা করার আগে এক্সেলকে পুরোপুরি বন্ধ করতে ভুলবেন না।

আমি সমস্যাটি সফলভাবে প্রতিলিপি করেছি এবং উপরেরটি ব্যবহার করে এটি ম্যাক্স এবং উইন্ডোজ উভয় ক্ষেত্রেই সমাধান করতে সক্ষম হয়েছি।


আমি মনে করি না এটি কাজ করে। আমি এক্সেল থেকেই সেলগুলিতে লাইন ব্রেকগুলির সাথে একটি সিএসভি রপ্তানি করেছি। যেহেতু লোকেল পরিবর্তিত হয়নি, এক্সেলটি এটি সঠিকভাবে লোড করতে সক্ষম হওয়া উচিত। তবে তা পারে না। এটি এখনও কোষে লাইন বিরতিতে গোলমাল করে।
m000
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.