Android Question [SOLVED]writing txt

Discussion in 'Android Questions' started by camolas, Feb 26, 2015.

  1. camolas

    camolas Member Licensed User

    Hi,

    Please i need hellp on modify a existing txt but i only want to change one line.

    example:
    Code:
    1
    2
    3
    4

    or

    1,2,3,4
    I want to replace the third position to A and leave the others without any change

    Code:
    1
    2
    A
    4

    or

    1,2,A,4
    Its is possible?

    Thanks
     
  2. KMatle

    KMatle Expert Licensed User

    MyText=Mytext.Replace("3", "A")

    Take a look at string functions of B4A
     
    camolas likes this.
  3. stevel05

    stevel05 Expert Licensed User

    If you don't know the value of the 3rd entry, you can use Regex.Split:

    Code:
    Sub FieldReplace(FieldNo As Int,Delim As String,Source As String,ReplacementStr As StringAs String

        
    'Stops arrayindex out of bounds error
        If FieldNo < 0 Then Return Source

        
    Dim T() As String = Regex.Split(Delim,Source)

        
    'Stops arrayindex out of bounds error
        If FieldNo >= T.Length Then Return Source

        T(FieldNo) = ReplacementStr

        
    'Build Return String
        Dim ReturnStr As String
        
    For i = 0 To T.Length - 1
            ReturnStr =  ReturnStr & T(i)
            
    If i < T.Length - 1 Then ReturnStr = ReturnStr & Delim
        
    Next
        
    Return ReturnStr
    End Sub
    Use As:

    Code:
    Dim Str As String = "1,2,3,4"
        
    Log(FieldReplace(2,",",Str,"A")) 'Positions are zero based same as arrays
     
    Last edited: Feb 26, 2015
    camolas and DonManfred like this.
  4. camolas

    camolas Member Licensed User

    Ok, now how can i save the replace "field" to txt (only the modify and keep the others)?

    Special thanks to @KMatle and @stevel05 :)
     
  5. stevel05

    stevel05 Expert Licensed User

    Code:
    Sub GetField(FieldNo As Int,Delim As String,Source As StringAs String
        
    'Stops arrayindex out of bounds error
        If FieldNo < 0 Then Return ""
       
        
    Dim T() As String = Regex.Split(Delim,Source)
       
        
    'Stops arrayindex out of bounds error
        If FieldNo >= T.Length Then Return ""
       
        
    Return T(FieldNo)
    End Sub
    Usage:

    Code:
    Dim Str As String = "1,2,3,4"
        
    Dim TexttoReplace As String = GetField(2,",",Str)
        
    Log(FieldReplace(2,",",Str,"A"))
     
  6. camolas

    camolas Member Licensed User

    This write the update txt to device?
     
  7. stevel05

    stevel05 Expert Licensed User

  8. DonManfred

    DonManfred Expert Licensed User

    I suggest starting at the Beginners Guide and then working trhrough it and all it´s samples to get further. The start at the users guide (all examples here too) then.

    It should dont need this thread knowing the basics!
     
    Cableguy likes this.
  9. Cableguy

    Cableguy Expert Licensed User

    exactly!
     
    DonManfred likes this.
  10. camolas

    camolas Member Licensed User

    Code:
    Sub bt_1_Click
        
    Dim xx As String
        xx = 
    1
        Stre  = Items(
    0) & "," &  Items(1) &  "," & xx  & "," &  Items(3)
        
    File.WriteString(File.DirRootExternal, "TT.txt", _
            Stre)
    End Sub
    Thanks @stevel05

    @Manfred i dont now why every time you reply to my posts you have to implicate...:(
    Code:
    http://www.b4x.com/android/forum/threads/solved-tts-service-for-2-activitys.49877/#post-311439
     
  11. Cableguy

    Cableguy Expert Licensed User

    He is not implicating... but there are noob questions... and then there are the "I don't care about the search engine on the top right of the this site" questions...
    yours are more on the later category...
     
    DonManfred likes this.
  12. camolas

    camolas Member Licensed User

    I dont wont to start any problems i just fell what i write just that... Thanks
     
Loading...
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice