অ্যান্ড্রয়েডে একটি জেসন ফাইল পড়া [বন্ধ]


84

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

{
"aakash": [
    [  0.070020,0.400684],
    [  0.134198,0.515837],
    [  0.393489,0.731809],
    [  0.281616,0.739490]

],
"anuj": [
    [  1287.836667,-22.104523],
    [  -22.104523,308.689613],
    [  775.712801,-13.047385],
    [  -13.047385,200.067743]
]
}

4
এখানে প্রশ্ন পোস্ট করার আগে আপনাকে গুগল করা দরকার। নেটে প্রচুর উদাহরণ পাওয়া যায়।
চিরাগ

4
@ চিরাগরাভাল আমি একমত তবে আমি কোনও ফাইল থেকে পড়ার জন্য জাসন ফাইলটি কোথায় রাখব?
আকাশ অনুজ

আপনার যদি স্থির জাসন ফাইল থাকে তবে আপনি এটি আপনার প্রকল্পে সম্পদ এবং কাঁচা ফোল্ডারগুলির মধ্যে রাখতে পারেন তবে আপনি যদি জেসন ফাইলটি গতিশীলভাবে তৈরি করছেন তবে এসডিকার্ডে একটি ফাইল তৈরি করুন
ρяσѕρєя কে

4
@ আকাশআনুজ: ফাইজানের উত্তর দেখুন এবং আপনাকে সম্পদ ফোল্ডারে ফাইল দিন
Dec কে

16
কেন এই বন্ধ ছিল জানি না। প্রশ্নটি আমার কাছে পুরোপুরি স্পষ্ট এবং সুনির্দিষ্ট বলে মনে হচ্ছে। 1) অ্যান্ড্রয়েড অ্যাপ্লিকেশন বিকাশের সময় জসন ডেটা ফাইলগুলি কোথায় সঞ্চয় করা হয়? 2) আমি কীভাবে সেই ডেটা পড়ব? অবশ্যই, এটি দুটি প্রশ্নে বিভক্ত হতে পারে, তবে দুটি প্রশ্ন এতটা সম্পর্কিত (আপনি কখনই অন্যটি ছাড়া কোনওটি ব্যবহার করতে পারবেন না) উভয়ই জিজ্ঞাসা করতে পারে, যা আকাশআনুজ করেছিলেন। তদ্ব্যতীত, @ ফাইজান এটির জবাব দেওয়ার জন্য দুর্দান্ত কাজ করেছে, যা "অযোগ্য পরিবর্তনযোগ্য" অভিযোগকে অকার্যকর করে তোলে। রায়? বৈধ প্রশ্ন
এসএমবিগস

উত্তর:


212

ফাইলটি সম্পদে রাখুন

অ্যান্ড্রয়েড স্টুডিও প্রকল্পে নির্মিত প্রকল্পের জন্য আপনাকে মূল ফোল্ডারের নীচে সম্পদ ফোল্ডার তৈরি করতে হবে।

সেই ফাইলটি পড়ুন:

public String loadJSONFromAsset(Context context) {
        String json = null;
        try {
            InputStream is = context.getAssets().open("file_name.json");

            int size = is.available();

            byte[] buffer = new byte[size];

            is.read(buffer);

            is.close();

            json = new String(buffer, "UTF-8");


        } catch (IOException ex) {
            ex.printStackTrace();
            return null;
        }
        return json;

    }

এবং তারপরে আপনি কেবল stringএই ফাংশনটি দ্বারা এই রিটার্নটি পড়তে পারেন

JSONObject obj = new JSONObject(json_return_by_the_function);

জেএসএন সম্পর্কিত আরও তথ্যের জন্য দেখুন http://www.vogella.com/articles/AndroidJSON/article.html

আশা করি আপনি যা চান তা পেয়ে যাবেন।


4
যদি ফাইলের আকার প্রায় 6 থেকে 7 এমবি হয় তবে কী হবে? ফাইলটি স্ট্রিংয়ের মধ্যে রাখলে এটি একটি ব্যতিক্রম ছুঁড়ে দেয় (স্মৃতি থেকে বাইরে)। জসনআরাই ফাইল থেকে একবারে কেবলমাত্র একটি জসনঅবজেক্ট পুনরুদ্ধার করার কী উপায় আছে?
হিরেন দাবি

আমি কীভাবে একটি ওয়েব লিঙ্ক থেকে একটি JSON ফাইল পড়তে পারি?
Si8

7
অ্যান্ড্রয়েড স্টুডিও প্রকল্পে নির্মিত প্রকল্পের জন্য আপনাকে মূল ফোল্ডারের অধীনে সম্পদ ফোল্ডারটি তৈরি করতে হবে কী asset folderএবং main folderকী?
হিরदेश বিশ্বদেওয়া

4
জাভা ডক্স অনুসারে উপলভ্য () দ্বারা প্রাপ্ত ফলাফলের ভিত্তিতে বাফার বরাদ্দ করা ভুল: ডকস.ওরকল / জাভাসে / / / ডকস / এপি / জাভা / আইও / "নোট করুন যে ইনপুটস্ট্রিমের কিছু প্রয়োগ বাস্তবায়ন ফিরিয়ে দেবে স্ট্রিমের মোট বাইট সংখ্যা, অনেকেই তা করবে না this এই স্ট্রিমের সমস্ত ডেটা ধরে রাখার উদ্দেশ্যে বাফার বরাদ্দ করতে এই পদ্ধতির রিটার্ন মানটি ব্যবহার করা কখনই সঠিক নয় ""
অ্যান্ড্রু

@ SiKni8 এখানে দেখতে: stackoverflow.com/a/9606629/1536976
Trilarion
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.