Файл действий формы ASP (FileSystemObject) - PullRequest
1 голос
/ 12 июля 2010

У меня есть код для публикации массива javascript в форме:

<form id="my_form" action="file:///C:/Users/John/Desktop/jquery/savetext.aspx" method="post" onsubmit="return prepare()">
<input type="text" id="file_name" name="file_name" rows="1" cols="20" />
<input type="hidden" name="seatsArray" />
<input type="submit" value="Save" />
</form>

<script type="text/javascript">
function prepare();
{
document.getElementById('seatsArray').value = seatsArray.join();
return true;
}
</script>

Может ли кто-нибудь помочь мне с нужным мне файлом действия savetext.aspx, поскольку я знаю ASP.NET?является минимальным (я привык к PHP, но этот должен быть ASP.NET).

Я думаю, у меня может быть трещина при достижении где-то рядом:

<%@ Page Language="C#" %>
<script runat="server">
using System;
using System.IO;

class Test 
{
public static void Main() 
{
    string path = "file:///C:/Users/John/Desktop/jquery/txtfiles/" + request.form("file_name");
    if (!File.Exists(path)) 
    {
        using (StreamWriter sw = File.CreateText(path)) 
        {
            sw.WriteLine(request.form("seatsArray"));
            sw.WriteLine("");
        }   
    }

    using (StreamReader sr = File.OpenText(path)) 
    {
        string s = "";
        while ((s = sr.ReadLine()) != null) 
        {
            Console.WriteLine(s);
        }
    }
}
}
</script>

Яна правильном пути?

Большое спасибо!

Ответы [ 2 ]

1 голос
/ 13 июля 2010

Я думаю, что вы должны просто использовать форму, как предполагалось, и просто добавить данные массива в скрытый элемент ..

<form id="my_form" action="http://my_site/savetext.aspx" method="post" onsubmit="return prepare()">
  <input type="text" id="file_name" name="file_name" rows="1" cols="20" />
  <input type="hidden" name="seatsArray" />
  <input type="submit" value="Save" />
</form>

<script type="text/javascript">
function prepare();
{
  document.getElementById('seatsArray').value = seatsArray.join();
  return true;
}
</script>

и на стороне сервера используйте request.form("file_name") и request.form("seatsArray")

0 голосов
/ 13 июля 2010

вам нужно использовать класс потока. Это краткий код для записи / создания текстовых файлов в ASP.NET с использованием VB.NET.

    Dim strStreamW As Stream
    Dim strStreamWriter As StreamWriter
    Try
      Dim ds As New DataSet
      Dim FilePath As String = "C:\nombreArchivo.txt"

      'Open the file, if not exists create it
      strStreamW = File.OpenWrite(FilePath)
      strStreamWriter = New StreamWriter(strStreamW, _
                    System.Text.Encoding.UTF8)

   'Using a conection with the db
   ds = Negocios.TraerDatosArchivo()

   Dim dr As DataRow
   Dim Nombre as String = ""
   Dim Apellido as String = ""
   Dim Email as String = ""

   For Each dr In ds.Tables(0).Rows
     'Get the recordset
      Nombre = CStr(dr("Nombre"))
      Apellido = CStr(dr("Apellido"))
      Email = CStr(dr("Email"))

      'Write the line in the file or "stream"
      strStreamWriter.WriteLine(Nombre & " " & Apellido & " - " & Email)

    Next
    strStreamWriter.Close()

    Catch ex As Exception

      strStreamWriter.Close()

      MsgBox(ex.Message)

  End Try
...