{"id":37251,"date":"2024-11-01T09:56:05","date_gmt":"2024-11-01T09:56:05","guid":{"rendered":"http:\/\/atmokpo.com\/w\/?p=37251"},"modified":"2024-11-01T11:36:00","modified_gmt":"2024-11-01T11:36:00","slug":"java-android-app-development-course-save-to-file","status":"publish","type":"post","link":"https:\/\/atmokpo.com\/w\/37251\/","title":{"rendered":"Java Android App Development Course, Save to File"},"content":{"rendered":"<p>There are several ways to store data in Android app development, and one of them is to utilize the file system. In this tutorial, we will explain in detail how to save data to a file in an Android app using Java. The main contents include creating files, writing and reading data, as well as covering key concepts related to file I\/O.<\/p>\n<h2>1. Overview of Android File System<\/h2>\n<p>Android provides several methods to store data in files. The commonly used file storage methods can be divided into two categories: internal storage and external storage.<\/p>\n<ul>\n<li><strong>Internal Storage<\/strong>: Stores data in a dedicated space within the device where the application is installed. This data cannot be accessed by other apps, and it will be deleted along with the app when the app is uninstalled.<\/li>\n<li><strong>External Storage<\/strong>: Stores data in external storage devices like SD cards. Users can access it directly, and data can be shared with other apps. External storage can further be divided into public and private storage.<\/li>\n<\/ul>\n<h2>2. Saving Files in Internal Storage<\/h2>\n<p>The process of saving files in internal storage is as follows.<\/p>\n<h3>2.1 Creating and Writing Files<\/h3>\n<p>First, we will open the &#8216;MainActivity.java&#8217; file and write code to save data in internal storage.<\/p>\n<pre><code>public class MainActivity extends AppCompatActivity {\n    private static final String FILENAME = \"example_file.txt\";\n    private Button writeButton;\n\n    @Override\n    protected void onCreate(Bundle savedInstanceState) {\n        super.onCreate(savedInstanceState);\n        setContentView(R.layout.activity_main);\n        \n        writeButton = findViewById(R.id.write_button);\n        writeButton.setOnClickListener(new View.OnClickListener() {\n            @Override\n            public void onClick(View v) {\n                writeFileToInternalStorage(\"Hello, World!\");\n            }\n        });\n    }\n\n    private void writeFileToInternalStorage(String data) {\n        FileOutputStream fos;\n        try {\n            fos = openFileOutput(FILENAME, Context.MODE_PRIVATE);\n            fos.write(data.getBytes());\n            fos.close();\n            Toast.makeText(this, \"File saved successfully!\", Toast.LENGTH_SHORT).show();\n        } catch (IOException e) {\n            e.printStackTrace();\n            Toast.makeText(this, \"File write failed!\", Toast.LENGTH_SHORT).show();\n        }\n    }\n}<\/code><\/pre>\n<p>The above code is an example that saves the text &#8220;Hello, World!&#8221; in a file named &#8216;example_file.txt&#8217; in internal storage when a simple button is clicked.<\/p>\n<h3>2.2 Reading Files<\/h3>\n<p>To read the saved file, add the following code.<\/p>\n<pre><code>private void readFileFromInternalStorage() {\n    FileInputStream fis;\n    try {\n        fis = openFileInput(FILENAME);\n        InputStreamReader isr = new InputStreamReader(fis);\n        BufferedReader reader = new BufferedReader(isr);\n        StringBuilder sb = new StringBuilder();\n        String line;\n\n        while ((line = reader.readLine()) != null) {\n            sb.append(line);\n        }\n\n        fis.close();\n        Toast.makeText(this, \"Read from file: \" + sb.toString(), Toast.LENGTH_SHORT).show();\n    } catch (IOException e) {\n        e.printStackTrace();\n        Toast.makeText(this, \"File read failed!\", Toast.LENGTH_SHORT).show();\n    }\n}<\/code><\/pre>\n<p>Now it is possible to read from the file after writing to it. When the user clicks the button, the saved content is read and displayed as a Toast message on the screen.<\/p>\n<h2>3. Saving Files in External Storage<\/h2>\n<p>Saving files in external storage is slightly different from internal storage, and users can access the files. To save data in external storage, you must first request permissions.<\/p>\n<h3>3.1 Requesting Permissions<\/h3>\n<p>Add the following code to the AndroidManifest.xml file to grant access permissions for external storage.<\/p>\n<pre><code>&lt;uses-permission android:name=\"android.permission.WRITE_EXTERNAL_STORAGE\"\/&gt;\n&lt;uses-permission android:name=\"android.permission.READ_EXTERNAL_STORAGE\"\/&gt;<\/code><\/pre>\n<p>Now, add the following code to &#8216;MainActivity.java&#8217; for runtime permission requests.<\/p>\n<pre><code>private static final int REQUEST_EXTERNAL_STORAGE = 1;\nprivate String[] permissions = {Manifest.permission.WRITE_EXTERNAL_STORAGE, Manifest.permission.READ_EXTERNAL_STORAGE};\n\n@Override\nprotected void onCreate(Bundle savedInstanceState) {\n    super.onCreate(savedInstanceState);\n    setContentView(R.layout.activity_main);\n\n    if (ContextCompat.checkSelfPermission(this, Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) {\n        ActivityCompat.requestPermissions(this, permissions, REQUEST_EXTERNAL_STORAGE);\n    }\n\n    writeButton = findViewById(R.id.write_button);\n    writeButton.setOnClickListener(new View.OnClickListener() {\n        @Override\n        public void onClick(View v) {\n            writeFileToExternalStorage(\"Hello from External Storage!\");\n        }\n    });\n}<\/code><\/pre>\n<h3>3.2 Creating and Writing Files<\/h3>\n<p>Now you can create files and write data to external storage. The code to write files to external storage is as follows.<\/p>\n<pre><code>private void writeFileToExternalStorage(String data) {\n    File file = new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOCUMENTS), \"example_external_file.txt\");\n    FileOutputStream fos;\n    try {\n        fos = new FileOutputStream(file);\n        fos.write(data.getBytes());\n        fos.close();\n        Toast.makeText(this, \"External file saved successfully!\", Toast.LENGTH_SHORT).show();\n    } catch (IOException e) {\n        e.printStackTrace();\n        Toast.makeText(this, \"External file write failed!\", Toast.LENGTH_SHORT).show();\n    }\n}<\/code><\/pre>\n<p>The above code creates a file named &#8216;example_external_file.txt&#8217; in the documents directory of external storage and fills it with the data &#8220;Hello from External Storage!&#8221;.<\/p>\n<h3>3.3 Reading Files<\/h3>\n<p>The code to read the saved file is as follows.<\/p>\n<pre><code>private void readFileFromExternalStorage() {\n    File file = new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOCUMENTS), \"example_external_file.txt\");\n    FileInputStream fis;\n    try {\n        fis = new FileInputStream(file);\n        InputStreamReader isr = new InputStreamReader(fis);\n        BufferedReader reader = new BufferedReader(isr);\n        StringBuilder sb = new StringBuilder();\n        String line;\n\n        while ((line = reader.readLine()) != null) {\n            sb.append(line);\n        }\n\n        fis.close();\n        Toast.makeText(this, \"Read from external file: \" + sb.toString(), Toast.LENGTH_SHORT).show();\n    } catch (IOException e) {\n        e.printStackTrace();\n        Toast.makeText(this, \"External file read failed!\", Toast.LENGTH_SHORT).show();\n    }\n}<\/code><\/pre>\n<h2>4. Additional File Handling Features<\/h2>\n<p>When dealing with file I\/O, there are a few additional functions that can be implemented beyond simple reading and writing.<\/p>\n<h3>4.1 Checking File Existence<\/h3>\n<p>The code to check if a file exists is as follows.<\/p>\n<pre><code>private boolean fileExists(String fileName) {\n    File file = new File(getFilesDir(), fileName);\n    return file.exists();\n}<\/code><\/pre>\n<h3>4.2 Deleting Files<\/h3>\n<p>If you want to delete a file, use the code below.<\/p>\n<pre><code>private void deleteFileFromInternalStorage(String fileName) {\n    File file = new File(getFilesDir(), fileName);\n    if (file.delete()) {\n        Toast.makeText(this, \"File deleted successfully!\", Toast.LENGTH_SHORT).show();\n    } else {\n        Toast.makeText(this, \"File deletion failed!\", Toast.LENGTH_SHORT).show();\n    }\n}<\/code><\/pre>\n<h2>5. Conclusion<\/h2>\n<p>In this tutorial, we have learned in detail how to save data to a file in an Android app using Java. We broadly covered methods using internal and external storage, file creation and reading, and the aspects of permission requests.<\/p>\n<p>The file system continues to play an important role in various applications that require data storage. I hope this tutorial enhances your understanding of file I\/O and enables you to apply it in real application development.<\/p>\n<p>In future tutorials, we will also cover more complex data storage methods, such as databases. I hope you develop the ability to learn and appropriately utilize various data storage methods along with the file system.<\/p>\n<p>Thank you!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>There are several ways to store data in Android app development, and one of them is to utilize the file system. In this tutorial, we will explain in detail how to save data to a file in an Android app using Java. The main contents include creating files, writing and reading data, as well as &hellip; <a href=\"https:\/\/atmokpo.com\/w\/37251\/\" class=\"more-link\">\ub354 \ubcf4\uae30<span class=\"screen-reader-text\"> &#8220;Java Android App Development Course, Save to File&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[137],"tags":[],"class_list":["post-37251","post","type-post","status-publish","format-standard","hentry","category-java-android-app-development"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.2 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Java Android App Development Course, Save to File - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/atmokpo.com\/w\/37251\/\" \/>\n<meta property=\"og:locale\" content=\"ko_KR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Java Android App Development Course, Save to File - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\" \/>\n<meta property=\"og:description\" content=\"There are several ways to store data in Android app development, and one of them is to utilize the file system. In this tutorial, we will explain in detail how to save data to a file in an Android app using Java. The main contents include creating files, writing and reading data, as well as &hellip; \ub354 \ubcf4\uae30 &quot;Java Android App Development Course, Save to File&quot;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/atmokpo.com\/w\/37251\/\" \/>\n<meta property=\"og:site_name\" content=\"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\" \/>\n<meta property=\"article:published_time\" content=\"2024-11-01T09:56:05+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-11-01T11:36:00+00:00\" \/>\n<meta name=\"author\" content=\"root\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@bebubo4\" \/>\n<meta name=\"twitter:site\" content=\"@bebubo4\" \/>\n<meta name=\"twitter:label1\" content=\"\uae00\uc4f4\uc774\" \/>\n\t<meta name=\"twitter:data1\" content=\"root\" \/>\n\t<meta name=\"twitter:label2\" content=\"\uc608\uc0c1 \ub418\ub294 \ud310\ub3c5 \uc2dc\uac04\" \/>\n\t<meta name=\"twitter:data2\" content=\"5\ubd84\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/atmokpo.com\/w\/37251\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/atmokpo.com\/w\/37251\/\"},\"author\":{\"name\":\"root\",\"@id\":\"https:\/\/atmokpo.com\/w\/#\/schema\/person\/91b6b3b138fbba0efb4ae64b1abd81d7\"},\"headline\":\"Java Android App Development Course, Save to File\",\"datePublished\":\"2024-11-01T09:56:05+00:00\",\"dateModified\":\"2024-11-01T11:36:00+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/atmokpo.com\/w\/37251\/\"},\"wordCount\":580,\"publisher\":{\"@id\":\"https:\/\/atmokpo.com\/w\/#organization\"},\"articleSection\":[\"Java Android app development\"],\"inLanguage\":\"ko-KR\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/atmokpo.com\/w\/37251\/\",\"url\":\"https:\/\/atmokpo.com\/w\/37251\/\",\"name\":\"Java Android App Development Course, Save to File - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\",\"isPartOf\":{\"@id\":\"https:\/\/atmokpo.com\/w\/#website\"},\"datePublished\":\"2024-11-01T09:56:05+00:00\",\"dateModified\":\"2024-11-01T11:36:00+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/atmokpo.com\/w\/37251\/#breadcrumb\"},\"inLanguage\":\"ko-KR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/atmokpo.com\/w\/37251\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/atmokpo.com\/w\/37251\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"\ud648\",\"item\":\"https:\/\/atmokpo.com\/w\/en\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Java Android App Development Course, Save to File\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/atmokpo.com\/w\/#website\",\"url\":\"https:\/\/atmokpo.com\/w\/\",\"name\":\"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/atmokpo.com\/w\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/atmokpo.com\/w\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"ko-KR\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/atmokpo.com\/w\/#organization\",\"name\":\"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\",\"url\":\"https:\/\/atmokpo.com\/w\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\/\/atmokpo.com\/w\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/atmokpo.com\/w\/wp-content\/uploads\/2024\/11\/logo.png\",\"contentUrl\":\"https:\/\/atmokpo.com\/w\/wp-content\/uploads\/2024\/11\/logo.png\",\"width\":400,\"height\":400,\"caption\":\"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\"},\"image\":{\"@id\":\"https:\/\/atmokpo.com\/w\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/x.com\/bebubo4\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/atmokpo.com\/w\/#\/schema\/person\/91b6b3b138fbba0efb4ae64b1abd81d7\",\"name\":\"root\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\/\/atmokpo.com\/w\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/708197b41fc6435a7ce22d951b25d4a47e9e904270cb1f04682d4f025066f80c?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/708197b41fc6435a7ce22d951b25d4a47e9e904270cb1f04682d4f025066f80c?s=96&d=mm&r=g\",\"caption\":\"root\"},\"sameAs\":[\"http:\/\/atmokpo.com\/w\"],\"url\":\"https:\/\/atmokpo.com\/w\/author\/root\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Java Android App Development Course, Save to File - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/atmokpo.com\/w\/37251\/","og_locale":"ko_KR","og_type":"article","og_title":"Java Android App Development Course, Save to File - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","og_description":"There are several ways to store data in Android app development, and one of them is to utilize the file system. In this tutorial, we will explain in detail how to save data to a file in an Android app using Java. The main contents include creating files, writing and reading data, as well as &hellip; \ub354 \ubcf4\uae30 \"Java Android App Development Course, Save to File\"","og_url":"https:\/\/atmokpo.com\/w\/37251\/","og_site_name":"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","article_published_time":"2024-11-01T09:56:05+00:00","article_modified_time":"2024-11-01T11:36:00+00:00","author":"root","twitter_card":"summary_large_image","twitter_creator":"@bebubo4","twitter_site":"@bebubo4","twitter_misc":{"\uae00\uc4f4\uc774":"root","\uc608\uc0c1 \ub418\ub294 \ud310\ub3c5 \uc2dc\uac04":"5\ubd84"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/atmokpo.com\/w\/37251\/#article","isPartOf":{"@id":"https:\/\/atmokpo.com\/w\/37251\/"},"author":{"name":"root","@id":"https:\/\/atmokpo.com\/w\/#\/schema\/person\/91b6b3b138fbba0efb4ae64b1abd81d7"},"headline":"Java Android App Development Course, Save to File","datePublished":"2024-11-01T09:56:05+00:00","dateModified":"2024-11-01T11:36:00+00:00","mainEntityOfPage":{"@id":"https:\/\/atmokpo.com\/w\/37251\/"},"wordCount":580,"publisher":{"@id":"https:\/\/atmokpo.com\/w\/#organization"},"articleSection":["Java Android app development"],"inLanguage":"ko-KR"},{"@type":"WebPage","@id":"https:\/\/atmokpo.com\/w\/37251\/","url":"https:\/\/atmokpo.com\/w\/37251\/","name":"Java Android App Development Course, Save to File - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","isPartOf":{"@id":"https:\/\/atmokpo.com\/w\/#website"},"datePublished":"2024-11-01T09:56:05+00:00","dateModified":"2024-11-01T11:36:00+00:00","breadcrumb":{"@id":"https:\/\/atmokpo.com\/w\/37251\/#breadcrumb"},"inLanguage":"ko-KR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/atmokpo.com\/w\/37251\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/atmokpo.com\/w\/37251\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"\ud648","item":"https:\/\/atmokpo.com\/w\/en\/"},{"@type":"ListItem","position":2,"name":"Java Android App Development Course, Save to File"}]},{"@type":"WebSite","@id":"https:\/\/atmokpo.com\/w\/#website","url":"https:\/\/atmokpo.com\/w\/","name":"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","description":"","publisher":{"@id":"https:\/\/atmokpo.com\/w\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/atmokpo.com\/w\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"ko-KR"},{"@type":"Organization","@id":"https:\/\/atmokpo.com\/w\/#organization","name":"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","url":"https:\/\/atmokpo.com\/w\/","logo":{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/atmokpo.com\/w\/#\/schema\/logo\/image\/","url":"https:\/\/atmokpo.com\/w\/wp-content\/uploads\/2024\/11\/logo.png","contentUrl":"https:\/\/atmokpo.com\/w\/wp-content\/uploads\/2024\/11\/logo.png","width":400,"height":400,"caption":"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8"},"image":{"@id":"https:\/\/atmokpo.com\/w\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/x.com\/bebubo4"]},{"@type":"Person","@id":"https:\/\/atmokpo.com\/w\/#\/schema\/person\/91b6b3b138fbba0efb4ae64b1abd81d7","name":"root","image":{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/atmokpo.com\/w\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/708197b41fc6435a7ce22d951b25d4a47e9e904270cb1f04682d4f025066f80c?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/708197b41fc6435a7ce22d951b25d4a47e9e904270cb1f04682d4f025066f80c?s=96&d=mm&r=g","caption":"root"},"sameAs":["http:\/\/atmokpo.com\/w"],"url":"https:\/\/atmokpo.com\/w\/author\/root\/"}]}},"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack-related-posts":[],"_links":{"self":[{"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/posts\/37251","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/comments?post=37251"}],"version-history":[{"count":1,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/posts\/37251\/revisions"}],"predecessor-version":[{"id":37252,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/posts\/37251\/revisions\/37252"}],"wp:attachment":[{"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/media?parent=37251"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/categories?post=37251"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/tags?post=37251"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}