আমি কীভাবে স্থানীয় পাঠ্য ফাইলে জেএসনকে সংরক্ষণ করব


88

বলুন আমার কাছে একটি জাভাস্ক্রিপ্ট অবজেক্ট রয়েছে যা দেখতে দেখতে এটির মতো দেখাচ্ছে:

  var data = {
      name: "cliff",
      age: "34",
      name: "ted",
      age: "42",
      name: "bob",
      age: "12"
    }

var jsonData = JSON.stringify(data);

আমি এটিকে JSON এ রূপান্তর করতে স্ট্রিংফাই করি। আমি কীভাবে এই জেএসএনকে স্থানীয় পাঠ্য ফাইলে সংরক্ষণ করব যাতে আমি এটি নোটপ্যাডে খুলতে পারি, বলতে পারি etc.

উত্তর:


195

নোড.জেএস:

var fs = require('fs');
fs.writeFile("test.txt", jsonData, function(err) {
    if (err) {
        console.log(err);
    }
});

ব্রাউজার (ওয়েবপিপি):

function download(content, fileName, contentType) {
    var a = document.createElement("a");
    var file = new Blob([content], {type: contentType});
    a.href = URL.createObjectURL(file);
    a.download = fileName;
    a.click();
}
download(jsonData, 'json.txt', 'text/plain');

4
: এটা সম্ভব, আপনি শুধু ব্যবহার ইনপুট ট্যাগ টাইপ = ফাইলের সাথে আছে, এখানে উপস্থাপন মত stackoverflow.com/questions/13709482/...
Rafal Łużyński

12
আমি [object Object]যখন এটি করি তখন আমি পেয়েছি
জ্যাক

40
@ জ্যাকনিচলসন আমিও পেয়েছি [object Object].. আমাকে JSON.stringify()প্রথমে কল করতে হবে এবং সেই মানটিই পাস করতে হবে , বস্তুটি না দিয়ে।
ne1410s

4
এটি আমার পক্ষে কাজ করেছে, তবে আমি যদি ফাইলটি প্রতিস্থাপন করতে না চাই, তবে পরিবর্তে ফাইলটিতে পাঠ্য যুক্ত করতে পারি?
সিজার লিওনার্দো ওচোয়া কন্ট্রিরাস

4
পরে a.click(), আমরা কল করা উচিত revokeObjectURL: অর্ডার ব্রাউজার জানা ফাইল রেফারেন্স আর রাখার না করার জন্য URL.revokeObjectURL(a.href).আরও তথ্য: developer.mozilla.org/en-US/docs/Web/API/URL/revokeObjectURL
andreivictor

8

খাঁটি জেএস সম্পর্কিত একটি সমাধান এখানে। আপনি এটি এইচটিএমএল 5 সেভএএস দিয়ে করতে পারেন। উদাহরণস্বরূপ এই লিবিব সহায়ক হতে পারে: https://github.com/eligrey/FileSaver.js
ডেমোটি দেখুন: http://eligrey.com/demos/FileSaver.js/
PS json save সম্পর্কে কোনও তথ্য নেই, তবে আপনি এটিকে ফাইলের ধরণে "application/json"এবং বিন্যাসে পরিবর্তন করতে পারেন.json


"অ্যাপ্লিকেশন / জেসন" এবং .json এইচটিএমএল ফাইল সিস্টেমের সাথে ভাল কাজ করে। এছাড়াও "JSON এ অপ্রত্যাশিত টোকেন?" এর মতো কোনও জেসন পার্স ত্রুটি প্রতিরোধ করতে এটি ব্যবহার করুন। ধন্যবাদ
অজয় সিং

5

স্থানীয় ডাটা টেক্সট ফাইলটিতে সংরক্ষণ করার জন্য এটি আমার সমাধান।

function export2txt() {
  const originalData = {
    members: [{
        name: "cliff",
        age: "34"
      },
      {
        name: "ted",
        age: "42"
      },
      {
        name: "bob",
        age: "12"
      }
    ]
  };

  const a = document.createElement("a");
  a.href = URL.createObjectURL(new Blob([JSON.stringify(originalData, null, 2)], {
    type: "text/plain"
  }));
  a.setAttribute("download", "data.txt");
  document.body.appendChild(a);
  a.click();
  document.body.removeChild(a);
}
<button onclick="export2txt()">Export data to local txt file</button>

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.