HISE Logo Forum
    • Categories
    • Register
    • Login

    How to check if a json file is not in the project folder

    Scheduled Pinned Locked Moved Solved General Questions
    13 Posts 3 Posters 592 Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • S
      Sawer
      last edited by

      Hello everyone.
      What's the function that checks if a file is stored or not in the project folder?
      EG:

      if("/..fileImLooking.js" == isNotThere)
      {
          Do something
      }
      

      Any help is appreciated

      d.healeyD 1 Reply Last reply Reply Quote 0
      • d.healeyD
        d.healey @Sawer
        last edited by

        @Sawer

        There is no such function. You can use the file api to look for files though, if you're interested in a JSON file in the User Presets folder you can use Engine.loadFromJSON

        Libre Wave - Freedom respecting instruments and effects
        My Patreon - HISE tutorials
        YouTube Channel - Public HISE tutorials

        S 2 Replies Last reply Reply Quote 0
        • S
          Sawer @d.healey
          last edited by

          @d-healey Ok ,thanks

          1 Reply Last reply Reply Quote 0
          • S
            Sawer @d.healey
            last edited by

            @d-healey But why when I remove the Json file from my folder, the onInit callback console doesn't give me error stating that there's no variable or Json file? Cause I have a statement that works on a value placed in a Json data. When I throw the Json file to the trash, the function still works on that value.

            d.healeyD 1 Reply Last reply Reply Quote 0
            • d.healeyD
              d.healey @Sawer
              last edited by

              Can you show me a code example?

              Libre Wave - Freedom respecting instruments and effects
              My Patreon - HISE tutorials
              YouTube Channel - Public HISE tutorials

              S 1 Reply Last reply Reply Quote 0
              • S
                Sawer @d.healey
                last edited by

                @d-healey

                inline function checkOnLoad()
                {
                	local pData = Engine.loadFromJSON("../endTrial.js");
                        
                        local v = pData.enddate;
                        
                        if (todaystime > v )
                        {
                		  include("Serials.js");
                		  include("Authorisation.js");
                          ScriptLabel3.showControl(false);
                		  AuthorisationDialogue.showControl(1);
                		  GlobalMute.setAttribute(GlobalMute.ignoreButton, 1);
                
                         }
                        
                        else if (todaystime < v)
                        {
                           Console.print("trial still working"); 
                           ScriptLabel3.setValue("10 Day Trial Running");
                           AuthorisationDialogue.showControl(0);
                           Label1.showControl(0);
                           Startbtn.showControl(0);
                           GlobalMute.setAttribute(GlobalMute.ignoreButton, 0);
                        }
                        
                        ScriptLabel3.changed();
                        
                        
                    
                }
                
                    checkOnLoad();
                

                My concern is that the " local v = pData.enddate;" still works even when it's not there (Json File throwed away) That's why I was looking for a function to check if the Json is in the project folder so the whole function resets. The purpose behind my question is that I want to create a set of function that :

                1. On a button callback, dumpsAsJson(myData,"/..myFile)
                2. If myVar is > or < than myData = Do something
                3. If Json file is not there = reset UI to state 1
                d.healeyD 1 Reply Last reply Reply Quote 0
                • d.healeyD
                  d.healey @Sawer
                  last edited by

                  @Sawer

                  You're including files within a function, does that work?

                  How are you checking if the data is being loaded from the file?

                  How are you getting todaystime?

                  To check the existence of a file you should use the file and filesystem APIs.

                  Libre Wave - Freedom respecting instruments and effects
                  My Patreon - HISE tutorials
                  YouTube Channel - Public HISE tutorials

                  S 1 Reply Last reply Reply Quote 1
                  • S
                    Sawer @d.healey
                    last edited by Sawer

                    @d-healey Everything works perfectly.
                    I just need a function that checks if a file is there or not So that the UI (label1 and Startbtn) is or is not visible based on my statements.
                    The snippet has other files outside, so you could probably get a lot of errors. Let me try and send it then..

                    HiseSnippet 2526.3oc2Y8tbabaD+NIcolzxwNYxj1OhQSmoTMpTjRT+Kt0gRhTNLQThiHsS8zYZJ3QPRDcD3xc3jLaF2wSeR5iheD5iPeDxaf6Bb2oCG4QZZNMcZ58AagE6t3GVr6hcAa4wsI99bOCybcF6RLLW2p8XlX3oCwTlQiZFlOx5Tt63VdbAwVP4LiSF6h88I8LLMW8oRtLyslg56G+hSvNXlMIgjgwy4Tax4zQTQB0VU+ZpiyY3djNzQZbWoZCaN6TtCO.PzpVkLbw1WiGPt.KYaEKCyOndOpf60VfEDeCy0Ng2ab6g7aYg7+bpOsqCQNnrQaPQgjOi6zShXIUiSGRc50Jdm6aXXZ0JwNrZnc3SrZR6Quitt8PNAJQBc6g4Jog2pofWYc3URCdY.oUzfzZgP5irZa6QcEIyHwy8sZvDDu9XvrqCkPdMVwXc3.D3fIJNBeM4LOXvcRTX+Rk1BsWoRa9374yu81mEvTGxHwPr.MfH9M9nN7d3w9ndvNpPsZa2r41u.91LOk4PYDT+XQ.tkmlvVejaCVMPlBRYZK7nrAal+GxifOGtM1AIh4C8GPMwhgE83ArdZrWzOnqu5uJr+VnC2bSTz21aijZNOJiuO6cpqJag1Gz0uEsao6TWSvdLbYUHX7pDpv826wQJ7EDrW9bxOkR8Hh.OVxV9wJp4ekzbWCzI5JRehGAhZ7yCN+9BzMXuHitbMASTc1.vRWDLvsG6KHijl4B8wN9D3XKQl5rdyS.gWPZ9Ep0PBLPjLN8zvPZ47nXGBqGHklJ9LT4ROVtodVCDnEOQGIaZhoH1Uv.whcHgE8T9HWNCFTXiXF1H0pE5GeNtKwY2YKpFSoE+3.wPtG0GK8QqAHhOHfLS8jI2oUnZQJOSMDNsTjL0UQeHYfTROtSgx.Wg7OE4XawTS.F3lABhFfdpCuK1QRD.kJ4sDRoxdUXiDljPKYTQeh3XAbh1EFTPiNc.i6QNIPH3rsPpUV8AN3gDQmhcb5BomCyU.ADXgO72jP+ihRNO0iHyChvLDUlxgAw9ekOmcF0gftkJFp3W5JobgdN1IfLUdENK1XDaGriM2aAF.PDYxkbZoW5J8LibRAbqh2RlEbnw.Coh3+goh+2fDFMswmi5lZxWEE.mi1GUHZ4SqhnnudAibO1+qZe4ExbG3sPaTr31chfUeJXKJ9c9xSiX4zchkmKJyQgMJWRlxCojb1rq4lDEnGy261OrjF2Y3OpOcl9kJFxk681qRJWtWkGrn4eWYDjZLZ4h86JLkiQnS5j2hYODXFbBA.iFgYiQpqyFhugfBusr.ko7CkdlHoq4lfNZzWQ6z.OH2rPc6Gh5iZd4U0kpMTBEUtlz8Ao+bYHJD8I2vdRY.5XoKNvDV+r.4GVQEB65B2Y3Wb1K640a2dAV152.2jHFB2LAW6LBpXILfzGpdpfx+A0NZIUAeRCwlEmJfydHw95KYmyw8JnBsBiabqEF3D4d6.SCESLR4f+tbsu6OBU0MfZTpqXTTVFbJCuztd4IfPalOIdMWNfElsSPOHDoMQt19QKZpoR48OAplSLT7sqRcsXIxkbtb4USRsLsUf.vXRSwuGcitkPK2DfGetConKTbBD9nxABYlgZsQ2x8tF7KfsepLeKPNGzUALVnn5R99kV4cmYYtIWR9VpjLyw.mx..oJXCfDBY44dWYax+OUHR3UiZ2WcAzqzkrvXGPBzjS0uelyEsicHdYNsr7Lu4IXAVvntDuTWJBLB8OjtoDqY2ThdOS1goj0XjyZvnhKcIrY0IkQTdb3udVCY.NzIiYDMfOWhmfJgfYMxMPagg80jypFw+ZA2E5t6tj+Fl2Snl8AVZGQFTn2lOTmxtFu7t9GqxqN9tAuwq5szdhgIcW9hpCIzAC05CsQUA4kBoF0c3MtI1fXtpgFfVWD0YX3xeFjAT.wEcfjuJb8PKcRk0.F7k.LiwS.r272mBXunZjQKzBk25qIi6xwd8L5NHt830sprygUNX+i18vRFTnJ+3ItuUk814nCqb3tk0nuSnDGU4n8OXmi1yPty06zVcZsxe1zRlQYCX89FIHgxeJWoXosjzpQ8ccviuzV.2cdgxWClVkoTM+47aAw.RGoF9kzvQk24.03SC7E7QO0C6NjZ6mRxZj93.Gwwp6AkOfPpYOwAt.Gz0UxTMvLkJt+QpuCOrzAGU5fxJt5vGLvgzj2Ksvxahgl2YLhiDKJZOym7b3dPtmFXjEMEO4YNXQawXmIzTq5wmBSRWk3JYU1IlNzQl1Zue9WYn6O8KR6f2Byhbv+kVYlbU2g5IZd5FUlvg5e85Icnd82WsK2qGw6JbOZfuliYUy0VjXtGHiQUzjOAjFPtPGHMp5hk0snowYsWRi3+x3oP7WFEa9PqFWzt9UcPv+z33ySYAmIbW2pCU3PBI7RcKUJy1Rh1+weap.1mDg1O0pkS.TeT70i+UkdxBzwYwBumJNwVP2QzXRI390+I8DacWbb6CQpMXs7Hvckgg4S3o3Gg6JVn2iuPXlZWke1dNgUm0f4FHl0dBR3sv6oP.uh0zakIcgpUUOaY4C1a28NrzQ6taprkpjhk1emJGs2Ao1Q4l0N5ii1Qp6SmxESOxrZP0Yg1WmgKTBZy8AFFu8sRp2n+hg5vyZVv6dVgUZoAp23nCpuKBTqYc4UYsiyvyLuUbsY5aUp9IHaxqaoyLHAtAsywPDs7R2ieApiJtdZWUpeS9H.XXuwQ0aL8yzdeq6Z0R8ZnqakTHX5Wlc0E9kYKO2WlMoDGyUhJ7BXcNwz5kiZnJMS+EyMV.c7Pq9zW1VDXesr7Q+IUhQJCSziE+HK3pv.3hrzucs7A6ilXx2xW9nvLepXrN79O1CZunP7irZQE1CyFiqjAFkmC+DfwH+qGXUueenVgD.tl0Y+weZdye8k+CicuaC8ZqdTO0h+opwnuQ93EOkvHdRiW447Sx7OWzeRF2E9mjIr9uNPcZ9tb+TJtMYDsCjLQu.CCYAUdjuWU8lN8SgJoxbpe7KNC1jYJSarHvS4Vb7Hd.SjxMX048SCUdI+ogV6+49og9YPvtoYqo9gEeD35Nx0gTmcCwA5DTgwO1Jpz+Xpo8kaxYb2gbF0V+f9JBzz+fADOcrm4F5Xg.ZcHgxmT8JhCAq6z9qqdN3rg8jMNrj1hxKtsXdmW+JqP3hjAfne9ljd0++NI8U7.YK9MwfSHTKjEzHbaH2nMIpSO4CrXthL+V33RxwgIGY8TCdK7EMYY4XynIKGO4+UViQXaO92ZGV8gzO8dJJv9lo9w1yY0TNFUNtbCKqREKYLBxv8s11RS7uCRXlsL6rDxr6RHSkkPl8VBY1eIj4fkPlCmqLxKWfVh3ih5oznYq5pWswzrNCCduJOci+MvGNZVo
                    
                    d.healeyD LindonL 2 Replies Last reply Reply Quote 0
                    • d.healeyD
                      d.healey @Sawer
                      last edited by d.healey

                      @Sawer Use the file api. You should answer the questions I asked and I might be able to help you more.

                      Libre Wave - Freedom respecting instruments and effects
                      My Patreon - HISE tutorials
                      YouTube Channel - Public HISE tutorials

                      S 1 Reply Last reply Reply Quote 1
                      • LindonL
                        Lindon @Sawer
                        last edited by

                        @Sawer

                        Have you tried:

                        local pData = Engine.loadFromJSON("../endTrial.js");
                        if (pData)
                        {
                            Console.print("file loaded...");
                        }else{
                            Console.print("file NOT THERE.....");
                        }
                        

                        HISE Development for hire.
                        www.channelrobot.com

                        S 1 Reply Last reply Reply Quote 3
                        • S
                          Sawer @Lindon
                          last edited by

                          @Lindon Not yet, trying it now. Thanks so much.

                          1 Reply Last reply Reply Quote 0
                          • S
                            Sawer @d.healey
                            last edited by

                            @d-healey
                            I've tried with the api, but maybe I haven't found precisely what I was looking for. Anyway I've attached the snippet, this will answer all the question. Thanks

                            S 1 Reply Last reply Reply Quote 0
                            • S
                              Sawer @Sawer
                              last edited by

                              @d-healey , @Lindon Working super, thanks so much for the help!

                              1 Reply Last reply Reply Quote 1
                              • S Sawer has marked this topic as solved on
                              • First post
                                Last post

                              27

                              Online

                              1.7k

                              Users

                              11.9k

                              Topics

                              103.4k

                              Posts