• 0

Json ?


Question

hi I have tried reading the documentation on json but its not getting me anywhere ... I could tell you exactly what json is and does ....

json is a language which belongs to the javascript family blah blah blah it can be used to communicate between different languages and platforms ect ect .... but the thing is I have no idea how this thing is working can someone give me links to json / php to java tutorials that they have found usful ? or give me some small little bits of code so i can see what the hell is going on ? or give me some indepth explination to what i can do with this ? I need to learn it apparently

Link to comment
https://www.neowin.net/forum/topic/1127368-json/
Share on other sites

8 answers to this question

Recommended Posts

  • 0
or give me some indepth explination to what i can do with this ?

Familar with XML? Same kinda thing, just (in my opinion) better. It's just an easy standardized way for one program to talk to another.. regardless of who wrote it, if it properly parses JSON data, it'll get there unmangled. It's not a transport, just a way to ensure that program A can understand program B and vice versa. Some IDE's will have JSON parsers built in so you can view/serialize data a bit easier, there's some online too. Take your data, serialize it into JSON, and presto, you get something like below. The other program receives this then does it in reverse, and you get a "tree" which you should be able to easily visualize in your head with this example.


{
"firstName": "Max",
"address": {
"streetAddress": "123 Main St.",
"city": "Anytown",
"state": "US",
"postalCode": 12345
},
"phoneNumbers": [
"123-456-7890",
"123-555-1212"
]
}
[/CODE]

Link to comment
https://www.neowin.net/forum/topic/1127368-json/#findComment-595410430
Share on other sites

  • 0

JSON is merely a data-interchange format for passing data between programs written using various languages/technologies. Since it is widely used on the Internet and PHP has a habit of including the kitchen sink, it also has JSON encode and decode functions built-in (since PHP 5.2.1). The json_decode page in the PHP manual has not only function documentation but also several examples. You might also take a look at this StackOverflow question about parsing JSON in PHP. It has most of the code for a complete parser.

Link to comment
https://www.neowin.net/forum/topic/1127368-json/#findComment-595410434
Share on other sites

  • 0

Familar with XML? Same kinda thing, just (in my opinion) better. It's just an easy standardized way for one program to talk to another.. regardless of who wrote it, if it properly parses JSON data, it'll get there unmangled. It's not a transport, just a way to ensure that program A can understand program B and vice versa. Some IDE's will have JSON parsers built in so you can view/serialize data a bit easier, there's some online too. Take your data, serialize it into JSON, and presto, you get something like below. The other program receives this then does it in reverse, and you get a "tree" which you should be able to easily visualize in your head with this example.


{
"firstName": "Max",
"address": {
"streetAddress": "123 Main St.",
"city": "Anytown",
"state": "US",
"postalCode": 12345
},
"phoneNumbers": [
"123-456-7890",
"123-555-1212"
]
}
[/CODE]

oh that seems a bit long winded :/ I got my program at the moment posting to a php script then catching the response via datainputstream ... is this fine? or do you think Json would be better ? for large bits of information I send as 1 string with specific parameters so my java program can handle and string manipulate its self... I Dont know what i was hoping for with json but to me it does not sound that useful sounds like there are many alternatives... :(

Link to comment
https://www.neowin.net/forum/topic/1127368-json/#findComment-595410464
Share on other sites

  • 0

oh that seems a bit long winded :/ I got my program at the moment posting to a php script then catching the response via datainputstream ... is this fine? or do you think Json would be better ? for large bits of information I send as 1 string with specific parameters so my java program can handle and string manipulate its self... I Dont know what i was hoping for with json but to me it does not sound that useful sounds like there are many alternatives... :(

JSON would be what's received by the InputStream. It's not a replacement for any data socket handling things, it is the data. If your data needs lots of key-value things like you're sending objects, maps, or arrays across, then JSON would be good for your uses. It's not good for just straight strings or for binary data.

Link to comment
https://www.neowin.net/forum/topic/1127368-json/#findComment-595410504
Share on other sites

  • 0

To avoid stuff like that, you'll want to ensure that you're using a proper JSON encoder/decoder. JSON isn't actually JavaScript (It just shares the object notation, hence the name) and there's a bunch of subtle differences that can cause things to break if the parser isn't smart/good enough (Which is also another reason you never parse JSON using eval(), and be very very careful with "JSONP", grab it via XHR instead, etc.)

Link to comment
https://www.neowin.net/forum/topic/1127368-json/#findComment-595417088
Share on other sites

  • 0

JSON = JavaScript Object Notation. The name kinda explains what it is. It's simply a way of notating javascript objects so you can pass them around in a standardised, lightweight way.

BTW, if you're using Chrome, install the JSONView extension which will automatically format JSON responses into a nice readable display.

Link to comment
https://www.neowin.net/forum/topic/1127368-json/#findComment-595417190
Share on other sites

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Posts

    • Can you read? I've said I'm willing to pay more for a notchless (no notch) 3:2 screen.
    • Not even an OLED display on the laptops. Also it seems that the laptop design isn't the same as the Surface Ultra model. Looks like bargain bin at high prices.
    • make your own notch - it's not that hard
    • VirtualBox 7.2.10 by Razvan Serea VirtualBox is a powerful x86 and AMD64/Intel64 virtualization product for enterprise as well as home use. Targeted at server, desktop and embedded use, it is now the only professional-quality virtualization solution that is also Open Source Software. Presently, VirtualBox runs on Windows, Linux, macOS, and Solaris hosts and supports a large number of guest operating systems including but not limited to Windows (NT 4.0, 2000, XP, Server 2003, Vista, 7, 8, Windows 10 and Windows 11), DOS/Windows 3.x, Linux (2.4, 2.6, 3.x, 4.x, 5.x and 6.x), Solaris and OpenSolaris, OS/2, OpenBSD, NetBSD and FreeBSD. Some of the features of VirtualBox are: Modularity. VirtualBox has an extremely modular design with well-defined internal programming interfaces and a client/server design. This makes it easy to control it from several interfaces at once: for example, you can start a virtual machine in a typical virtual machine GUI and then control that machine from the command line, or possibly remotely. VirtualBox also comes with a full Software Development Kit: even though it is Open Source Software, you don't have to hack the source to write a new interface for VirtualBox. Virtual machine descriptions in XML. The configuration settings of virtual machines are stored entirely in XML and are independent of the local machines. Virtual machine definitions can therefore easily be ported to other computers. VirtualBox 7.2.10 changelog: VMM: Fixed issue when CentOS 10 VM was not booting due to the message "Fatal glibc error: CPU does not support x86-64-v3" (​github:gh-642) Devices/EFI: Fixed booting issue when ARM VM had less than 1024 MiB of RAM assigned (​github:gh-679) USB: Fixed issue when it was not possible to attach USB device to headless VM on Apple Silicon/macOS 26.4.1 (​github:gh-631) Storage: Fixed issue when VIRTIO-SCSI device was not recognized as SSD device by guest system (​github:gh-634) Network: Fixed issue in E1000 emulation code which triggered debug log creation (​github:gh-645) Network: Fixed issue in E1000 emulation code which prevented OS/2 guest from booting (​github:gh-683) Linux Host: Fixed issue when VMs could not be started due to kernel oops (​github:gh-639) Linux Host and Guest: Fixed issue when kernel modules were failing to build with openSUSE 16.0 kernel Linux Host and Guest: Added initial support for kernel 7.1 Linux Host and Guest: Added extra fixes for RHEL 9.8 kernel (​github:gh-676) Linux Host and Guest: Added possibility to build source code using NASM instead of YASM as the assembler (​github:gh-520) Linux Guest Additions: Added initial support for Extended Data Control Protocol for clipboard sharing with Plasma on Wayland guests (​github:gh-33) Linux Guest Additions: Added extra fixes for preventing vboxvideo kernel module build with kernel version 7.0 and newer (​github:gh-655) OS/2 Guest Additions: Fixed issue when Shared Folders automount and clipboard sharing stopped working (​github:gh-551) Download: VirtualBox 7.2.10 | 170.0 MB (Open Source) Download: VirtualBox 7.2.10 Extension Pack | 19.1 MB View: VirtualBox Home Page | Screenshot Get alerted to all of our Software updates on Twitter at @NeowinSoftware
    • OK, now ask yourself how are they going to enforce that law? By requiring every single adult to prove their age and provide their legal identity documents to an UNREGULATED 3rd party company that already has a long track record of multiple data breaches. Not to mention, parliament have voted AGAINST this ban, twice, and Starmer is going ahead anyway. So, where's the democracy here, because that looks like dictatorship to me. The solution here is parental responsibility, not government control. Run some public service announcements on TV and UK social media teaching parents how to setup parental controls. That's already been proven to actually work. But the, this is not and has NEVER been about keeping kids safe. It's about control and monitoring. Watching what you're doing online and controlling what you can see and what you can say.
  • Recent Achievements

    • Week One Done
      suprememobiles48 earned a badge
      Week One Done
    • One Month Later
      Windows Guy earned a badge
      One Month Later
    • One Month Later
      Prasann earned a badge
      One Month Later
    • Week One Done
      Prasann earned a badge
      Week One Done
    • First Post
      Dys Topia earned a badge
      First Post
  • Popular Contributors

    1. 1
      +primortal
      525
    2. 2
      +Edouard
      180
    3. 3
      PsYcHoKiLLa
      105
    4. 4
      Steven P.
      90
    5. 5
      ATLien_0
      70
  • Tell a friend

    Love Neowin? Tell a friend!