Skip to content

Commit 6b3bb69

Browse files
committed
✨ Added Gson and write and readFile
1 parent f41b3da commit 6b3bb69

File tree

3 files changed

+60
-7
lines changed

3 files changed

+60
-7
lines changed

app/build.gradle

+1
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ dependencies {
2929
implementation 'androidx.core:core-ktx:1.0.1'
3030
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
3131
implementation 'com.google.android.material:material:1.0.0'
32+
implementation 'com.google.code.gson:gson:2.8.5'
3233
testImplementation 'junit:junit:4.12'
3334
androidTestImplementation 'androidx.test:runner:1.1.1'
3435
androidTestImplementation 'androidx.test.espresso:espresso-core:3.1.1'

app/src/main/java/com/example/kotlin_reminder/MainActivity.kt

+49-4
Original file line numberDiff line numberDiff line change
@@ -5,19 +5,64 @@ import android.os.Bundle
55
import androidx.appcompat.app.AppCompatActivity
66
import android.view.Menu
77
import android.view.MenuItem
8+
import com.google.gson.Gson
9+
import com.google.gson.GsonBuilder
10+
import com.google.gson.reflect.TypeToken
811
import kotlinx.android.synthetic.main.activity_add_memo.*
9-
12+
import java.io.File
1013
import kotlinx.android.synthetic.main.activity_main.*
14+
import org.json.*
1115

1216
class MainActivity : AppCompatActivity() {
1317

1418
override fun onCreate(savedInstanceState: Bundle?) {
1519
super.onCreate(savedInstanceState)
1620
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)
2025
}
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")
2161
}
2262

2363
}
64+
65+
data class Task (
66+
val task: String,
67+
val desc : String
68+
)

app/src/main/java/com/example/kotlin_reminder/addMemo.kt

+10-3
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,16 @@ class AddMemo : AppCompatActivity() {
1111
super.onCreate(savedInstanceState)
1212
setContentView(R.layout.activity_add_memo)
1313

14-
MemoValidateButton.setOnClickListener { view ->
15-
val AddMemo2MainActivity = Intent(this, MainActivity::class.java)
16-
startActivity(AddMemo2MainActivity)
14+
MemoValidateButton.setOnClickListener { _ ->
15+
val addMemo2MainActivity = Intent(this, MainActivity::class.java)
16+
startActivity(addMemo2MainActivity)
1717
}
18+
19+
readFile("yes")
20+
}
21+
22+
private fun readFile(name: String) {
23+
print("DUNNO WTF LE SAMOIS ibzefibazepifpiaezrbfgpiuarebgfpibaergpibreapbigreipgbegbibipregabipgaerbiphgareibpgareibp")
24+
print(applicationContext.filesDir)
1825
}
1926
}

0 commit comments

Comments
 (0)