save point
This commit is contained in:
commit
9cb5c91e7e
4 changed files with 131 additions and 0 deletions
BIN
json.db
Normal file
BIN
json.db
Normal file
Binary file not shown.
66
jsonlib copy.pb
Normal file
66
jsonlib copy.pb
Normal file
|
@ -0,0 +1,66 @@
|
||||||
|
UseSQLiteDatabase()
|
||||||
|
|
||||||
|
; worry about the database init later
|
||||||
|
|
||||||
|
OpenDatabase(0,"json.db","","",#PB_Database_SQLite)
|
||||||
|
|
||||||
|
LoadJSON(1,"results.json");ParseJSON(1, json$) ; returns garbage without the PB ascii there not sure why
|
||||||
|
|
||||||
|
ParseJSON(1, json$) ; returns garbage without the PB ascii there not sure why
|
||||||
|
ObjectValue = JSONValue(1)
|
||||||
|
|
||||||
|
If ExamineJSONMembers(ObjectValue)
|
||||||
|
While NextJSONMember(ObjectValue)
|
||||||
|
|
||||||
|
Debug "Key: " + JSONMemberKey(ObjectValue)
|
||||||
|
|
||||||
|
MemberValue = JSONMemberValue(ObjectValue)
|
||||||
|
|
||||||
|
|
||||||
|
; Now extract the actual value based on its type
|
||||||
|
Select JSONType(MemberValue)
|
||||||
|
Case #PB_JSON_String
|
||||||
|
Debug "Value (String): " + GetJSONString(MemberValue)
|
||||||
|
|
||||||
|
|
||||||
|
Case #PB_JSON_Number
|
||||||
|
Debug "Value (Number): " + StrD(GetJSONDouble(MemberValue))
|
||||||
|
|
||||||
|
|
||||||
|
Case #PB_JSON_Boolean
|
||||||
|
Debug "Value (Boolean): " + Bool(GetJSONBoolean(MemberValue))
|
||||||
|
|
||||||
|
|
||||||
|
Case #PB_JSON_Object
|
||||||
|
Debug "Value (Object): (nested object)"
|
||||||
|
; You could further examine this nested object if needed.
|
||||||
|
|
||||||
|
|
||||||
|
Case #PB_JSON_Array
|
||||||
|
Debug "Value (Array): (nested array)"
|
||||||
|
; Handle array values if needed.
|
||||||
|
|
||||||
|
|
||||||
|
Default
|
||||||
|
Debug "Value (Unknown type)"
|
||||||
|
|
||||||
|
EndSelect
|
||||||
|
|
||||||
|
|
||||||
|
Wend
|
||||||
|
|
||||||
|
endif
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
; IDE Options = PureBasic 6.12 LTS (Linux - x64)
|
||||||
|
; CursorPosition = 43
|
||||||
|
; FirstLine = 33
|
||||||
|
; Folding = -
|
||||||
|
; EnableXP
|
||||||
|
; DPIAware
|
||||||
|
; IDE Options = PureBasic 6.12 LTS (Linux - x64)
|
||||||
|
; CursorPosition = 9
|
||||||
|
; EnableXP
|
||||||
|
; DPIAware
|
64
jsonlib.pb
Normal file
64
jsonlib.pb
Normal file
|
@ -0,0 +1,64 @@
|
||||||
|
UseSQLiteDatabase()
|
||||||
|
|
||||||
|
|
||||||
|
; worry about the database init later
|
||||||
|
|
||||||
|
OpenDatabase(0,"json.db","","",#PB_Database_SQLite)
|
||||||
|
|
||||||
|
LoadJSON(1,"results.json");ParseJSON(1, json$) ; returns garbage without the PB ascii there not sure why
|
||||||
|
|
||||||
|
ParseJSON(1, json$) ; returns garbage without the PB ascii there not sure why
|
||||||
|
ObjectValue = JSONValue(1)
|
||||||
|
|
||||||
|
If ExamineJSONMembers(ObjectValue)
|
||||||
|
While NextJSONMember(ObjectValue)
|
||||||
|
|
||||||
|
key$ = JSONMemberKey(ObjectValue)
|
||||||
|
MemberValue = JSONMemberValue(ObjectValue)
|
||||||
|
parentKey$ = "" ; Assuming no parent key information is available in the current code.
|
||||||
|
|
||||||
|
; Now extract the actual value based on its type
|
||||||
|
Select JSONType(MemberValue)
|
||||||
|
Case #PB_JSON_String
|
||||||
|
value$ = GetJSONString(MemberValue)
|
||||||
|
type$ = "String"
|
||||||
|
|
||||||
|
Case #PB_JSON_Number
|
||||||
|
value$ = StrD(GetJSONDouble(MemberValue))
|
||||||
|
type$ = "Number"
|
||||||
|
|
||||||
|
Case #PB_JSON_Boolean
|
||||||
|
value$ = Str(Bool(GetJSONBoolean(MemberValue))) ;Feels cheaty, but it workssss
|
||||||
|
type$ = "Boolean"
|
||||||
|
|
||||||
|
Case #PB_JSON_Object
|
||||||
|
value$ = "(nested object)"
|
||||||
|
;Debug key$
|
||||||
|
parentKey$ = key$
|
||||||
|
type$ = "object"
|
||||||
|
; You could further examine this nested object if needed.
|
||||||
|
|
||||||
|
Case #PB_JSON_Array
|
||||||
|
value$ = "(nested array)"
|
||||||
|
type$ = "Array"
|
||||||
|
; Handle array values if needed.
|
||||||
|
|
||||||
|
Default
|
||||||
|
value$ = "(unknown type)"
|
||||||
|
type$ = "Unknown"
|
||||||
|
|
||||||
|
EndSelect
|
||||||
|
|
||||||
|
; Insert the parsed data into the SQLite database
|
||||||
|
query$ = "INSERT INTO json_data (key, parent_key, type, value) VALUES ('" + key$ + "', '" + parentKey$ + "', '" + type$ + "', '" + value$ + "')"
|
||||||
|
If DatabaseUpdate(0, query$) = 0
|
||||||
|
Debug "Error inserting data: " + DatabaseError()
|
||||||
|
EndIf
|
||||||
|
|
||||||
|
Wend
|
||||||
|
EndIf
|
||||||
|
; IDE Options = PureBasic 6.12 LTS (Linux - x64)
|
||||||
|
; CursorPosition = 37
|
||||||
|
; FirstLine = 15
|
||||||
|
; EnableXP
|
||||||
|
; DPIAware
|
1
results.json
Normal file
1
results.json
Normal file
|
@ -0,0 +1 @@
|
||||||
|
{"admin":{"email":"offal@pngpst.net","created":"2024-07-23 01:32:58.983Z","avatar":0,"updated":"2024-07-23 01:32:58.983Z","id":"xf9w05ts29nik6z"},"token":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3MzIzNDUwMjIsImlkIjoieGY5dzA1dHMyOW5pazZ6IiwidHlwZSI6ImFkbWluIn0.UM_QP4NVBdioMLU8mPJ9ZL0bq_ylLPQ6Jdn3AzNKjK0"}
|
Loading…
Add table
Add a link
Reference in a new issue