Tags
Forum
Artikler
Brugere
Stil spørgsmål
1
online
Login
Husk mig
Buffer søgning ??
Tags:
c++
Bruger #12618
@ 18.03.08 09:41
1
hej..
Jeg har et problem med at filtrere noget ud af en buffer.
Jeg har et script der logger vores telefon server, og vil gerne filtrer noget ud af det der står.
Men først skal jeg finde ordets position i bufferen. Hvordan gør jeg det?
//Thomas
8
svar postet i denne tråd vises herunder
2
indlæg har modtaget i alt
2
karma
Sorter efter stemmer
Sorter efter dato
1
Bruger #11328
@ 18.03.08 10:02
1.323
Hvilken type er bufferen?
Hvis du kan lave det til en string kan du bruge find() funktion(erne)
1
Bruger #404
@ 19.03.08 14:03
131
no kidding -_-
Det virkede bare somom du ikke viste det, siden du oprettet det i C/C++ sektionen.
Jeg forstår ikke helt dit problem.. i din kode brugere du regulare expression's til at se om "CallerID2: 250" er i den streng, og dit spørgsmål gårpå hvordan man gør det?
0
Bruger #12618
@ 18.03.08 10:10
1
Her er koden hvis det kan hjælpe lidt:
using System;
using System.Net;
using System.Net.Sockets;
using System.Text.RegularExpressions;
using System.Text;
namespace AsteriskPrototype
{
class AppConsole
{
[STAThread]
static void Main(string[] args)
{
Console.WriteLine("Asterisk log:\\n");
// Connect to the asterisk server.
Socket clientSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
IPEndPoint serverEndPoint = new IPEndPoint(IPAddress.Parse("192.168.123.2"), 5038);
clientSocket.Connect(serverEndPoint);
// Login to the server; manager.conf needs to be setup with matching credentials.
clientSocket.Send(Encoding.ASCII.GetBytes("Action: Login\\r\\nUsername: admin\\r\\nSecret: amp111\\r\\nActionID: 1\\r\\n\\r\\n"));
int bytesRead = 0;
//string d;
//Array re;
do
{
byte[] buffer = new byte[1024];
bytesRead = clientSocket.Receive(buffer);
//Console.WriteLine(bytesRead + " bytes from asterisk server.");
string response = Encoding.ASCII.GetString(buffer, 0, bytesRead);
//Console.WriteLine(response);
if (Regex.Match(response, "Message: Authentication accepted", RegexOptions.IgnoreCase).Success)
{
// Send a ping request the asterisk server will send back a pong response.
clientSocket.Send(Encoding.ASCII.GetBytes("Action: Ping\\r\\nActionID: 2\\r\\n\\r\\n"));
}
if (Regex.Match(response, "CallerID2: 250", RegexOptions.IgnoreCase).Success)
{
Console.WriteLine("aaaaa");
Console.WriteLine(response);
Console.WriteLine("bbbbb");
}
} while (bytesRead != 0);
Console.WriteLine("Connection to server lost.");
Console.ReadLine();
}
}
}
0
Bruger #4996
@ 18.03.08 23:29
196
Din kode er hverken C eller C.
Måske er det noget .net ?
Prøv ovre i .net kategorien.
0
Bruger #12618
@ 19.03.08 10:02
1
det er ellers skrevet i c#
0
Bruger #404
@ 19.03.08 10:28
131
C# er også et .NET sprog.
0
Bruger #12618
@ 19.03.08 12:56
1
no kidding -_-
0
Bruger #4996
@ 19.03.08 19:45
196
Det jeg forsøgte at fortælle var at dit spørgsmål ikke har noget med C eller C++ at gøre og derfor ikke hører hjemme i denne kategori.
C# har intet med C eller C++ at gøre.
Karma barometer (30 dage)
Modtaget
Givet
X
Favorit hos
Forum tråde
Artikler
Tilføj til dine favorit tags
Fjern fra dine favorit tags