-----Original Message-----
From: py************* *************** *******@python. org [mailto:python-
li************* *************** @python.org] On Behalf Of max
Sent: Thursday, May 15, 2008 8:02 AM
To: py*********@pyt hon.org
Subject: Re: no inputstream?
On May 15, 9:51*am, castironpi <castiro...@gma il.comwrote:
On May 15, 8:37*am, Marc 'BlackJack' Rintsch <bj_...@gmx.net wrote:
On Thu, 15 May 2008 06:08:35 -0700, max wrote:
i currently have locations of the mp3s in question as strings, which
works for parsing local files, but gives me a "No such file or
directory" error when it tries to process URLs. *it seems terribly
inefficient to download each mp3 just to get at that small tag data,
and i assume there's a way to do this with file() or open() or
something, i just can't get it to work.
You can use `urllib2.urlope n()` to open URLs as files. *But if you
deal
with ID3 V1 tags you'll have to download the file anyway because those
are
in the last 128 bytes of an MP3 file.
Ciao,
* * * * Marc 'BlackJack' Rintsch
Just don't import time. *What would you do with an autolocking timer,
such as time.sleep( ) on a thread? *I am tongue tied in the presence
of a lady.
thanks guys. i guess i just figured there'd be a way to get at those
id3 bytes at the end without downloading the whole file. if java can
do this, seems like i should just stick with that implementation, no?
-- http://mail.python.org/mailman/listinfo/python-list
First off, ignore castironpi, it's a turing test failure.
Second, I'm curious as to how Java manages this. I'd think their streams
would have to be pretty magic to pull this off after the HTTP connection has
already been built.
Anyway, as I see it, this is more of a HTTP protocol question. I think what
you need to do is set the HTTP Range header to bytes=-128, see the urllib2
documentation for how. It's not that hard. Only down side is that not all
HTTP servers support the Range header, and it's an optional part of the HTTP
spec anyway. As far as I know it's the only way to get partial transfers,
though.
Also, are you sure you're dealing with v1 tags and not v2? Since v2 tags are
stored at the beginning (or sometimes end with v2.4) of the file. You might
be better off just opening the file with urllib2 and handing it off to
whatever id3 tag reading library you're using. As long as it's reasonably
smart, it should only download the part of the file it needs (which if the
tag happens to be v1, will be the whole file).
I'd love to know how Java handles all that automatically through a generic
stream interface, though.
--
John Krukoff jk******@ltgc.c om 11 1617
"John Krukoff" <jk******@ltgc. comwrites:
I'd love to know how Java handles all that automatically through a
generic stream interface, though.
It could be that their stream interface supports seek(), and that
seek()ing on HTTP connection sends the appropriate range request and,
if it fails, throws an appropriate exception which the client code
interprets as "seeking impossible, read the whole file".
But that doesn't apply to the InputStream interface described at http://java.sun.com/j2se/1.5.0/docs/...putStream.html -- no
seeking there.
you're right, my java implementation does indeed parse for Id3v2
(sorry for the confusion). i'm using the getrawid3v2() method of this
bitstream class ( http://www.javazoom.net/javalayer/docs/docs0.4/
javazoom/jl/decoder/Bitstream.html) to return an inputstream that then
i buffer and parse. apologies if i misrepresented my code!
back to python, i wonder if i'm misusing the mutagen id3 module. this
brief tutorial ( http://www.sacredchao.net/quodlibet/wiki/Development/
Mutagen/Tutorial) leads me to believe that something like this might
work:
from mutagen.mp3 import MP3
id3tags = MP3(urllib2.url open(URL))
but this gives me the following TypeError: "coercing to Unicode: need
string or buffer, instance found". does this mean i need to convert
the "file-like object" that is returned by urlopen() into a unicode
object? if so, do i just decode() with 'utf-8', or is this more
complex? as of now, doing so gives me mostly "No such file or
directory" errors, with a few HTTP 404s.
anyway, thanks again....
On May 15, 1:02*pm, Hrvoje Niksic <hnik...@xemacs .orgwrote:
"John Krukoff" <jkruk...@ltgc. comwrites:
I'd love to know how Java handles all that automatically through a
generic stream interface, though.
It could be that their stream interface supports seek(), and that
seek()ing on HTTP connection sends the appropriate range request and,
if it fails, throws an appropriate exception which the client code
interprets as "seeking impossible, read the whole file".
But that doesn't apply to the InputStream interface described athttp://java.sun.com/j2se/1.5.0/docs/api/java/io/InputStream.htm l-- no
seeking there.
On May 15, 9:00 pm, max <maxwell.newla. ..@gmail.comwro te:
you're right, my java implementation does indeed parse for Id3v2
(sorry for the confusion). i'm using the getrawid3v2() method of this
bitstream class (http://www.javazoom.net/javalayer/docs/docs0.4/
javazoom/jl/decoder/Bitstream.html) to return an inputstream that then
i buffer and parse. apologies if i misrepresented my code!
back to python, i wonder if i'm misusing the mutagen id3 module. this
brief tutorial (http://www.sacredchao.net/quodlibet/wiki/Development/
Mutagen/Tutorial) leads me to believe that something like this might
work:
from mutagen.mp3 import MP3
id3tags = MP3(urllib2.url open(URL))
but this gives me the following TypeError: "coercing to Unicode: need
string or buffer, instance found". does this mean i need to convert
the "file-like object" that is returned by urlopen() into a unicode
object? if so, do i just decode() with 'utf-8', or is this more
complex? as of now, doing so gives me mostly "No such file or
directory" errors, with a few HTTP 404s.
[snip]
I think it's expecting the path of the MP3 but you're giving it the
contents.
On May 15, 6:18*pm, MRAB <goo...@mrabarn ett.plus.comwro te:
On May 15, 9:00 pm, max <maxwell.newla. ..@gmail.comwro te:
you're right, my java implementation does indeed parse for Id3v2
(sorry for the confusion). *i'm using the getrawid3v2() method of this
bitstream class (http://www.javazoom.net/javalayer/docs/docs0.4/
javazoom/jl/decoder/Bitstream.html) to return an inputstream that then
i buffer and parse. *apologies if i misrepresented my code!
back to python, i wonder if i'm misusing the mutagen id3 module. *this
brief tutorial (http://www.sacredchao.net/quodlibet/wiki/Development/
Mutagen/Tutorial) leads me to believe that something like this might
work:
from mutagen.mp3 import MP3
id3tags = MP3(urllib2.url open(URL))
but this gives me the following TypeError: "coercing to Unicode: need
string or buffer, instance found". *does this mean i need to convert
the "file-like object" that is returned by urlopen() into a unicode
object? *if so, do i just decode() with 'utf-8', or is this more
complex? *as of now, doing so gives me mostly "No such file or
directory" errors, with a few HTTP 404s.
[snip]
I think it's expecting the path of the MP3 but you're giving it the
contents.
cool, so how do i give it the path, if not in the form of a URL
string? maybe this is obvious...
On Thu, 2008-05-15 at 15:35 -0700, max wrote:
On May 15, 6:18 pm, MRAB <goo...@mrabarn ett.plus.comwro te:
On May 15, 9:00 pm, max <maxwell.newla. ..@gmail.comwro te:
you're right, my java implementation does indeed parse for Id3v2
(sorry for the confusion). i'm using the getrawid3v2() method of this
bitstream class (http://www.javazoom.net/javalayer/docs/docs0.4/
javazoom/jl/decoder/Bitstream.html) to return an inputstream that then
i buffer and parse. apologies if i misrepresented my code!
back to python, i wonder if i'm misusing the mutagen id3 module. this
brief tutorial (http://www.sacredchao.net/quodlibet/wiki/Development/
Mutagen/Tutorial) leads me to believe that something like this might
work:
from mutagen.mp3 import MP3
id3tags = MP3(urllib2.url open(URL))
but this gives me the following TypeError: "coercing to Unicode: need
string or buffer, instance found". does this mean i need to convert
the "file-like object" that is returned by urlopen() into a unicode
object? if so, do i just decode() with 'utf-8', or is this more
complex? as of now, doing so gives me mostly "No such file or
directory" errors, with a few HTTP 404s.
[snip]
I think it's expecting the path of the MP3 but you're giving it the
contents.
cool, so how do i give it the path, if not in the form of a URL
string? maybe this is obvious...
-- http://mail.python.org/mailman/listinfo/python-list
It doesn't look like you can, with mutagen. So, time to find a different
library that supports arbitrary file objects instead of only file paths.
I'd suggest starting here: http://pypi.python.org/pypi?%3Aactio...&submit=search
Possibly one with actual documentation, since that would also be a step
up from mutagen.
--
John Krukoff <jk******@ltgc. com>
Land Title Guarantee Company
On Thu, 2008-05-15 at 17:11 -0600, John Krukoff wrote:
On Thu, 2008-05-15 at 15:35 -0700, max wrote:
On May 15, 6:18 pm, MRAB <goo...@mrabarn ett.plus.comwro te:
On May 15, 9:00 pm, max <maxwell.newla. ..@gmail.comwro te:
>
you're right, my java implementation does indeed parse for Id3v2
(sorry for the confusion). i'm using the getrawid3v2() method of this
bitstream class (http://www.javazoom.net/javalayer/docs/docs0.4/
javazoom/jl/decoder/Bitstream.html) to return an inputstream that then
i buffer and parse. apologies if i misrepresented my code!
>
back to python, i wonder if i'm misusing the mutagen id3 module. this
brief tutorial (http://www.sacredchao.net/quodlibet/wiki/Development/
Mutagen/Tutorial) leads me to believe that something like this might
work:
>
from mutagen.mp3 import MP3
id3tags = MP3(urllib2.url open(URL))
>
but this gives me the following TypeError: "coercing to Unicode: need
string or buffer, instance found". does this mean i need to convert
the "file-like object" that is returned by urlopen() into a unicode
object? if so, do i just decode() with 'utf-8', or is this more
complex? as of now, doing so gives me mostly "No such file or
directory" errors, with a few HTTP 404s.
>
[snip]
I think it's expecting the path of the MP3 but you're giving it the
contents.
cool, so how do i give it the path, if not in the form of a URL
string? maybe this is obvious...
-- http://mail.python.org/mailman/listinfo/python-list
It doesn't look like you can, with mutagen. So, time to find a different
library that supports arbitrary file objects instead of only file paths.
I'd suggest starting here: http://pypi.python.org/pypi?%3Aactio...&submit=search
Possibly one with actual documentation, since that would also be a step
up from mutagen.
After a bit of time looking around, looks like nearly all the python id3
modules expect to work with filenames, instead of file objects.
I can't vouch for it, and the documentation still looks sparse, but this
module at least looks capable of accepting a file object: http://pypi.python.org/pypi/tagpy
Looks like it'd be a challenge to build if you're on windows, since it
depends on an external library.
Alternately, you could probably create a subclass of the mutagen stuff
that used an existing file object instead of opening a new one. No idea
what that might break, but seems like it would be worth a try.
As last ditch option, could write the first few kb of the file out to a
temp file and see if mutagen will load the partial file.
--
John Krukoff <jk******@ltgc. com>
Land Title Guarantee Company
On Thu, 2008-05-15 at 17:32 -0600, John Krukoff wrote:
On Thu, 2008-05-15 at 17:11 -0600, John Krukoff wrote:
On Thu, 2008-05-15 at 15:35 -0700, max wrote:
On May 15, 6:18 pm, MRAB <goo...@mrabarn ett.plus.comwro te:
On May 15, 9:00 pm, max <maxwell.newla. ..@gmail.comwro te:
you're right, my java implementation does indeed parse for Id3v2
(sorry for the confusion). i'm using the getrawid3v2() method of this
bitstream class (http://www.javazoom.net/javalayer/docs/docs0.4/
javazoom/jl/decoder/Bitstream.html) to return an inputstream that then
i buffer and parse. apologies if i misrepresented my code!
back to python, i wonder if i'm misusing the mutagen id3 module. this
brief tutorial (http://www.sacredchao.net/quodlibet/wiki/Development/
Mutagen/Tutorial) leads me to believe that something like this might
work:
from mutagen.mp3 import MP3
id3tags = MP3(urllib2.url open(URL))
but this gives me the following TypeError: "coercing to Unicode: need
string or buffer, instance found". does this mean i need to convert
the "file-like object" that is returned by urlopen() into a unicode
object? if so, do i just decode() with 'utf-8', or is this more
complex? as of now, doing so gives me mostly "No such file or
directory" errors, with a few HTTP 404s.
[snip]
I think it's expecting the path of the MP3 but you're giving it the
contents.
>
cool, so how do i give it the path, if not in the form of a URL
string? maybe this is obvious...
-- http://mail.python.org/mailman/listinfo/python-list
It doesn't look like you can, with mutagen. So, time to find a different
library that supports arbitrary file objects instead of only file paths.
I'd suggest starting here: http://pypi.python.org/pypi?%3Aactio...&submit=search
Possibly one with actual documentation, since that would also be a step
up from mutagen.
After a bit of time looking around, looks like nearly all the python id3
modules expect to work with filenames, instead of file objects.
I can't vouch for it, and the documentation still looks sparse, but this
module at least looks capable of accepting a file object: http://pypi.python.org/pypi/tagpy
Looks like it'd be a challenge to build if you're on windows, since it
depends on an external library.
Alternately, you could probably create a subclass of the mutagen stuff
that used an existing file object instead of opening a new one. No idea
what that might break, but seems like it would be worth a try.
As last ditch option, could write the first few kb of the file out to a
temp file and see if mutagen will load the partial file.
Okay, now I'm officially spending too much time looking through this
stuff.
However, looks like the "load" method of the MP3 class is what you'd
want to override to change mutagen's file loading behavior. Probably
pass the URL as the filename, and take a cut & paste version of the
default load method from ID3FileType and change it to use urllib2 to
open it instead of a local file open.
Might work. Might not. No warranty express or implied.
--
John Krukoff <jk******@ltgc. com>
Land Title Guarantee Company
On Thu, 2008-05-15 at 17:42 -0600, John Krukoff wrote:
On Thu, 2008-05-15 at 17:32 -0600, John Krukoff wrote:
On Thu, 2008-05-15 at 17:11 -0600, John Krukoff wrote:
On Thu, 2008-05-15 at 15:35 -0700, max wrote:
On May 15, 6:18 pm, MRAB <goo...@mrabarn ett.plus.comwro te:
On May 15, 9:00 pm, max <maxwell.newla. ..@gmail.comwro te:
>
you're right, my java implementation does indeed parse for Id3v2
(sorry for the confusion). i'm using the getrawid3v2() method of this
bitstream class (http://www.javazoom.net/javalayer/docs/docs0.4/
javazoom/jl/decoder/Bitstream.html) to return an inputstream that then
i buffer and parse. apologies if i misrepresented my code!
>
back to python, i wonder if i'm misusing the mutagen id3 module. this
brief tutorial (http://www.sacredchao.net/quodlibet/wiki/Development/
Mutagen/Tutorial) leads me to believe that something like this might
work:
>
from mutagen.mp3 import MP3
id3tags = MP3(urllib2.url open(URL))
>
but this gives me the following TypeError: "coercing to Unicode: need
string or buffer, instance found". does this mean i need to convert
the "file-like object" that is returned by urlopen() into a unicode
object? if so, do i just decode() with 'utf-8', or is this more
complex? as of now, doing so gives me mostly "No such file or
directory" errors, with a few HTTP 404s.
>
[snip]
I think it's expecting the path of the MP3 but you're giving it the
contents.
cool, so how do i give it the path, if not in the form of a URL
string? maybe this is obvious...
-- http://mail.python.org/mailman/listinfo/python-list
>
It doesn't look like you can, with mutagen. So, time to find a different
library that supports arbitrary file objects instead of only file paths.
I'd suggest starting here: http://pypi.python.org/pypi?%3Aactio...&submit=search
>
Possibly one with actual documentation, since that would also be a step
up from mutagen.
>
After a bit of time looking around, looks like nearly all the python id3
modules expect to work with filenames, instead of file objects.
I can't vouch for it, and the documentation still looks sparse, but this
module at least looks capable of accepting a file object: http://pypi.python.org/pypi/tagpy
Looks like it'd be a challenge to build if you're on windows, since it
depends on an external library.
Alternately, you could probably create a subclass of the mutagen stuff
that used an existing file object instead of opening a new one. No idea
what that might break, but seems like it would be worth a try.
As last ditch option, could write the first few kb of the file out to a
temp file and see if mutagen will load the partial file.
Okay, now I'm officially spending too much time looking through this
stuff.
However, looks like the "load" method of the MP3 class is what you'd
want to override to change mutagen's file loading behavior. Probably
pass the URL as the filename, and take a cut & paste version of the
default load method from ID3FileType and change it to use urllib2 to
open it instead of a local file open.
Might work. Might not. No warranty express or implied.
Hrm, damn, looks like you'd also have to create a custom ID3 class and
override load there too, since that gets called from the ID3FileType
load method. Definitely looks like work.
--
John Krukoff <jk******@ltgc. com>
Land Title Guarantee Company
On May 15, 6:42*pm, John Krukoff <jkruk...@ltgc. comwrote:
On Thu, 2008-05-15 at 17:32 -0600, John Krukoff wrote:
On Thu, 2008-05-15 at 17:11 -0600, John Krukoff wrote:
On Thu, 2008-05-15 at 15:35 -0700, max wrote:
On May 15, 6:18 pm, MRAB <goo...@mrabarn ett.plus.comwro te:
On May 15, 9:00 pm, max <maxwell.newla. ..@gmail.comwro te:
you're right, my java implementation does indeed parse for Id3v2
(sorry for the confusion). *i'm using the getrawid3v2() methodof this
bitstream class (http://www.javazoom.net/javalayer/docs/docs0.4/
javazoom/jl/decoder/Bitstream.html) to return an inputstream that then
i buffer and parse. *apologies if i misrepresented my code!
back to python, i wonder if i'm misusing the mutagen id3 module.*this
brief tutorial (http://www.sacredchao.net/quodlibet/wiki/Development/
Mutagen/Tutorial) leads me to believe that something like this might
work:
from mutagen.mp3 import MP3
id3tags = MP3(urllib2.url open(URL))
but this gives me the following TypeError: "coercing to Unicode:need
string or buffer, instance found". *does this mean i need to convert
the "file-like object" that is returned by urlopen() into a unicode
object? *if so, do i just decode() with 'utf-8', or is this more
complex? *as of now, doing so gives me mostly "No such file or
directory" errors, with a few HTTP 404s.
[snip]
I think it's expecting the path of the MP3 but you're giving it the
contents.
cool, so how do i give it the path, if not in the form of a URL
string? *maybe this is obvious...
-- http://mail.python.org/mailman/listinfo/python-list
It doesn't look like you can, with mutagen. So, time to find a different
library that supports arbitrary file objects instead of only file paths.
I'd suggest starting here:
>http://pypi.python.org/pypi?%3Aactio...&submit=search
Possibly one with actual documentation, since that would also be a step
up from mutagen.
After a bit of time looking around, looks like nearly all the python id3
modules expect to work with filenames, instead of file objects.
I can't vouch for it, and the documentation still looks sparse, but this
module at least looks capable of accepting a file object: http://pypi.python.org/pypi/tagpy
Looks like it'd be a challenge to build if you're on windows, since it
depends on an external library.
Alternately, you could probably create a subclass of the mutagen stuff
that used an existing file object instead of opening a new one. No idea
what that might break, but seems like it would be worth a try.
As last ditch option, could write the first few kb of the file out to a
temp file and see if mutagen will load the partial file.
Okay, now I'm officially spending too much time looking through this
stuff.
However, looks like the "load" method of the MP3 class is what you'd
want to override to change mutagen's file loading behavior. Probably
pass the URL as the filename, and take a cut & paste version of the
default load method from ID3FileType and change it to use urllib2 to
open it instead of a local file open.
Might work. Might not. No warranty express or implied.
--
John Krukoff <jkruk...@ltgc. com>
Land Title Guarantee Company- Hide quoted text -
- Show quoted text -
I'm supposed to question "time.toomuch.s pend". NAMERS! This thread has been closed and replies have been disabled. Please start a new discussion. Similar topics |
by: Seong Jin, Cho |
last post by:
Hi.
Is there a way to get an unbuffered InputStream from Process?
I found out that java.lang.Win32Process and java.lang.UNIXProcess both
wraps the stdout with java.io.BufferedInputStream, but I need an
unbuffered one.
|
by: Charles.Deisler |
last post by:
XmlTextReader requestdata = new XmlTextReader(Request.InputStream);
XmlTextWriter xmltextwriter = new XmlTextWriter(somefile,someencoding);
XmlTextWriter xmltextwriter2 = new
XmlTextWriter(somefile2,someencoding);
xmltextwriter.WriteNode(requestdata, false);
// i want to write to another writer here by resetting the reader
...
|
by: Steve Drake |
last post by:
All,
I have a HttpHandler that handles a PUT, if i PUT 700MEGs of data it runs
out of memory, i have found that this is due to the Request.InputStream
loading the entire stream when you access it.
If I run any of the following i get the error :
Context.Request.SaveAs(@"C:\1.xxx",false); // I get out of memory
|
by: Keith Harris |
last post by:
Hi,
I have an HtmlInputFile control which allows a user to upload a CSV file. I
want to display the first few rows for preview and later, load the rows to a
database.
Displaying the preview works fine. To display the preview, I use a
StreamReader to read the PostedFile.InputStream stream.
When I later try to open the InputStream to...
|
by: bvasanth123 |
last post by:
Hi,
I would like to know how can I read an InputStream into Excel object.
In my web app, user uploads MS-Excel file though asp.net html file
control. I get UploadedFile.PostedFile.InputStream() where UploadedFile
is the name of file control. Not I have InputStream. How can I read
into Excel object for parsing as excel file.
Regards,
Vasanth
| |
by: bvasanth123 |
last post by:
Hi,
I would like to know how can I read an InputStream into Excel object.
In my web app, user uploads MS-Excel file though asp.net html file
control. I get UploadedFile.PostedFile.InputStream() where UploadedFile
is the name of file control. Not I have InputStream. How can I read
into Excel object for parsing as excel file. (Language VB.NET)...
|
by: samtilden |
last post by:
I want to print out some tracing messages from
Global.asax.cs/Application_BeginRequest().
I easily got:
System.Web.HttpContext.Current.Request.RawUrl, and
System.Web.HttpContext.Current.Request.Params.
I would now like to get the entire:
|
by: O.B. |
last post by:
I have the need to read a file (version.txt) that is embedded within an
WAR file that is within an EAR file: foo.ear contains bar.war contains
resources/version.txt
I am able to get the bar.ear file as an inputstream as follows:
import java.util.zip.ZipEntry;
import java.util.zip.ZipFile;
ZipFile zipFile = new ZipFile("foo.ear");
|
by: raheel javed |
last post by:
i am using mobile for communication with live server
when mobile send its information to server the input stream is encoded in utf-8
that is converted into string but it is still not understandable
so chk it what should i do to convert such type of data
Stream str;
string strmContents= "";
int counter,...
|
by: Hystou |
last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it.
First, let's disable language...
|
by: Oralloy |
last post by:
Hello folks,
I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>".
The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed.
This is as boiled down as I can make it. ...
| |
by: Hystou |
last post by:
Overview:
Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For...
|
by: tracyyun |
last post by:
Dear forum friends,
With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the...
|
by: agi2029 |
last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then...
|
by: isladogs |
last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM).
In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules.
He will explain when you may want to use classes...
|
by: adsilva |
last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
|
by: 6302768590 |
last post by:
Hai team
i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
| |
by: muto222 |
last post by:
How can i add a mobile payment intergratation into php mysql website.
| |