<?xml version="1.0" encoding="UTF-8"?> <!-- * This file is part of the LibreOffice project. * * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. * * This file incorporates work covered by the following license notice: * * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements. See the NOTICE file distributed * with this work for additional information regarding copyright * ownership. The ASF licenses this file to you under the Apache * License, Version 2.0 (the "License"); you may not use this file * except in compliance with the License. You may obtain a copy of * the License at http://www.apache.org/licenses/LICENSE-2.0 . --> <helpdocument version="1.0"> <meta> <topic id="textsbasicshared03020202xml" indexer="include" status="PUBLISH"> <title id="tit" xml-lang="en-US">Input# Statement [Runtime]</title> <filename>/text/sbasic/shared/03020202.xhp</filename> </topic> <history> <created date="2003-10-31T00:00:00">Sun Microsystems, Inc.</created> </history> </meta> <body> <section id="input"> <bookmark xml-lang="en-US" branch="index" id="bm_id3154908"><bookmark_value>Input statement</bookmark_value> </bookmark> <paragraph role="heading" id="hd_id3154908" xml-lang="en-US" level="1" l10n="U" oldref="1"><link href="text/sbasic/shared/03020202.xhp" name="Input# Statement [Runtime]">Input# Statement [Runtime]</link></paragraph> <paragraph role="paragraph" id="par_id3156424" xml-lang="en-US" l10n="U" oldref="2">Reads data from an open sequential file.</paragraph> </section> <paragraph role="heading" id="hd_id3125863" xml-lang="en-US" level="2" l10n="U" oldref="3">Syntax:</paragraph> <paragraph role="code" id="par_id3150440" xml-lang="en-US" l10n="U" oldref="4">Input #FileNumber As Integer; var1[, var2[, var3[,...]]]</paragraph> <paragraph role="heading" id="hd_id3146121" xml-lang="en-US" level="2" l10n="U" oldref="5">Parameters:</paragraph> <paragraph role="paragraph" id="par_id3145749" xml-lang="en-US" l10n="U" oldref="6"> <emph>FileNumber:</emph> Number of the file that contains the data that you want to read. The file must be opened with the Open statement using the key word INPUT.</paragraph> <paragraph role="paragraph" id="par_id3150011" xml-lang="en-US" l10n="U" oldref="7"> <emph>var:</emph> A numeric or string variable that you assign the values read from the opened file to.</paragraph> <paragraph role="paragraph" id="par_id3159153" xml-lang="en-US" l10n="U" oldref="8">The <emph>Input#</emph> statement reads numeric values or strings from an open file and assigns the data to one or more variables. A numeric variable is read up to the first carriage return (Asc=13), line feed (Asc=10), space, or comma. String variables are read to up to the first carriage return (Asc=13), line feed (Asc=10), or comma.</paragraph> <paragraph role="paragraph" id="par_id3146984" xml-lang="en-US" l10n="U" oldref="9">Data and data types in the opened file must appear in the same order as the variables that are passed in the "var" parameter. If you assign non-numeric values to a numeric variable, "var" is assigned a value of "0".</paragraph> <paragraph role="paragraph" id="par_id3156442" xml-lang="en-US" l10n="CHG" oldref="10">Records that are separated by commas cannot be assigned to a string variable. Quotation marks (") in the file are disregarded as well. If you want to read these characters from the file, use the <emph>Line Input#</emph> statement to read pure text files (files containing only printable characters) line by line.</paragraph> <paragraph role="paragraph" id="par_id3147349" xml-lang="en-US" l10n="U" oldref="11">If the end of the file is reached while reading a data element, an error occurs and the process is aborted.</paragraph> <paragraph role="heading" id="hd_id3152578" xml-lang="en-US" level="2" l10n="U" oldref="12">Example:</paragraph> <bascode> <paragraph role="bascode" localize="false">Sub ExampleWorkWithAFile</paragraph> <paragraph role="bascode" localize="false">Dim iCount As Integer</paragraph> <paragraph role="bascode" localize="false">Dim sName As String</paragraph> <paragraph role="bascode" localize="false">Dim sValue As Integer</paragraph> <paragraph role="bascode" localize="false">Dim sFileName As String</paragraph> <paragraph role="bascode" localize="false"> </paragraph> <paragraph role="bascode" localize="false">sFileName = "c:\data.txt"</paragraph> <paragraph role="bascode" localize="false">iCount = Freefile</paragraph> <paragraph role="bascode" localize="false"> </paragraph> <paragraph role="bascode" id="par_id4144765" xml-lang="en-US">' Write data ( which we will read later with Input ) to file</paragraph> <paragraph role="bascode" localize="false">Open sFileName For Output As iCount</paragraph> <paragraph role="bascode" localize="false">sName = "Hamburg"</paragraph> <paragraph role="bascode" localize="false">sValue = 200</paragraph> <paragraph role="bascode" localize="false">Write #iCount, sName, sValue</paragraph> <paragraph role="bascode" localize="false">sName = "New York"</paragraph> <paragraph role="bascode" localize="false">sValue = 300</paragraph> <paragraph role="bascode" localize="false">Write #iCount, sName, sValue</paragraph> <paragraph role="bascode" localize="false">sName = "Miami"</paragraph> <paragraph role="bascode" localize="false">sValue = 459</paragraph> <paragraph role="bascode" localize="false">Write #iCount, sName, sValue</paragraph> <paragraph role="bascode" localize="false">Close #iCount</paragraph> <paragraph role="bascode" localize="false"> </paragraph> <paragraph role="bascode" localize="false">iCount = Freefile</paragraph> <paragraph role="bascode" id="par_id4144766" xml-lang="en-US">' Read data file using Input</paragraph> <paragraph role="bascode" localize="false">Open sFileName For Input As iCount</paragraph> <paragraph role="bascode" localize="false">Input #iCount; sName, sValue</paragraph> <paragraph role="bascode" localize="false">MsgBox sName & " " & sValue</paragraph> <paragraph role="bascode" localize="false">Input #iCount; sName, sValue</paragraph> <paragraph role="bascode" localize="false">MsgBox sName & " " & sValue</paragraph> <paragraph role="bascode" localize="false">Input #iCount; sName, sValue</paragraph> <paragraph role="bascode" localize="false">MsgBox sName & " " & sValue</paragraph> <paragraph role="bascode" localize="false">Close #iCount</paragraph> <paragraph role="bascode" localize="false">End Sub</paragraph> </bascode> </body> </helpdocument>