Jump to content

ArrayToString - how to enclose in quotation marks


Recommended Posts

Hi guys,

Another ridiculously stupid question from a newbie - I am trying to use ArrayToString to take a range of array strings and send them to a window dialogue. The problem is I can't get each string to be enclosed in quotation marks when output.

Here is the line of code I'm using:

Send(_ArrayToString($aFileArray," " , 2, 4))

the array values look something like this:

$aFileArray [0] = hello

$aFileArray [1] = I

$aFileArray [2] = am

$aFileArray [3] = here

$aFileArray [4] = today

So the code produces: am here today

But, I want it to say: "am" "here" "today"

I've tried to figure this out for a while now, and I must be missing something really obvious.

Thanks for any help you can give me!

Link to comment
Share on other sites

  • Moderators

geospatial,

You will need to build up the Send string to include the quotes. This should give you the clue:

#include <Array.au3>

Global $aFileArray[5]

$aFileArray [0] = "hello"
$aFileArray [1] = "I"
$aFileArray [2] = "am"
$aFileArray [3] = "here"
$aFileArray [4] = "today"

$sString_Direct = _ArrayToString($aFileArray," " , 2, 4)

MsgBox(0, "Direct", $sString_Direct) ; This is what you were doing

$sString_Indirect = ""
For $i = 2 To 4
    $sString_Indirect &= '"' & $aFileArray[$i] & '" '
Next

MsgBox(0, "Indirect", $sString_Indirect) ; I think you want to do it this way

I hope this helps. :D

M23

Public_Domain.png.2d871819fcb9957cf44f4514551a2935.png Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind

Open spoiler to see my UDFs:

Spoiler

ArrayMultiColSort ---- Sort arrays on multiple columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

 

Link to comment
Share on other sites

And another example.

#include <Array.au3>

Local $aFileArray[5]

$aFileArray[0] = "hello"
$aFileArray[1] = "I"
$aFileArray[2] = "am"
$aFileArray[3] = "here"
$aFileArray[4] = "today"

Run("notepad.exe")
WinWaitActive("Untitled -")

; Same as M23's but without the For - Next loop
Send('"' & $aFileArray[2] & '" "' & $aFileArray[3] & '" "' & $aFileArray[4] & '"' & @CRLF)
; or
Local $sString = '"' & _ArrayToString($aFileArray, '" "', 2, 4) & '"{ENTER}'
Send($sString)
Link to comment
Share on other sites

M23,

Thank you so much! That worked great - it was more complex than I thought it would be, but your solution has given me plenty to think about.

Malkey thanks for your examples, too. Your second example was what I was aiming for originally. It's great to see different solutions. Good stuff all around.

Have a good weekend!

Edited by geospatial
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...