@@ -5,19 +5,64 @@ import android.os.Bundle
5
5
import androidx.appcompat.app.AppCompatActivity
6
6
import android.view.Menu
7
7
import android.view.MenuItem
8
+ import com.google.gson.Gson
9
+ import com.google.gson.GsonBuilder
10
+ import com.google.gson.reflect.TypeToken
8
11
import kotlinx.android.synthetic.main.activity_add_memo.*
9
-
12
+ import java.io.File
10
13
import kotlinx.android.synthetic.main.activity_main.*
14
+ import org.json.*
11
15
12
16
class MainActivity : AppCompatActivity () {
13
17
14
18
override fun onCreate (savedInstanceState : Bundle ? ) {
15
19
super .onCreate(savedInstanceState)
16
20
setContentView(R .layout.activity_main)
17
- addButton.setOnClickListener { view ->
18
- val MainActivity2AddMemo = Intent (this , AddMemo ::class .java)
19
- startActivity(MainActivity2AddMemo )
21
+
22
+ addButton.setOnClickListener { _ ->
23
+ val mainActivity2AddMemo = Intent (this , AddMemo ::class .java)
24
+ startActivity(mainActivity2AddMemo)
20
25
}
26
+
27
+ // On instancie GSON
28
+ val gson = Gson ()
29
+
30
+
31
+ /* val data = listOf(
32
+ Task("Boire", "C'est de l'eau"),
33
+ Task("Yes", "Trop bien"),
34
+ Task("Yo", "Les amis")
35
+ )
36
+
37
+ val jsonObjData = gson.toJson(data)
38
+
39
+ writeFile("pute.json", jsonObjData)*/
40
+ val content = readFile(" pute.json" )
41
+ println (content)
42
+
43
+ val listType = object : TypeToken <List <Task >>() {}.type
44
+ val decoded = gson.fromJson<List <Task >>(content, listType)
45
+ println (decoded)
46
+ }
47
+
48
+ private fun readFile (name : String ): String {
49
+ val file = File (applicationContext.filesDir, name)
50
+ return file.readText()
51
+ }
52
+
53
+ private fun writeFile (name : String , content : String ) {
54
+ // Créer une instance de file avec le chemin du dossier et le nom
55
+ val file = File (applicationContext.filesDir, name)
56
+ // Le créer (s'il existe deja va juste renvoyer false et true si créé, moyen de stocker dans val si besoin de savoir)
57
+ file.createNewFile()
58
+
59
+ file.writeText(content)
60
+ println (" DONE WRITE" )
21
61
}
22
62
23
63
}
64
+
65
+ data class Task (
66
+ val task : String ,
67
+ val desc : String
68
+ )
0 commit comments