|
Read this article[^] to get you started. It demonstrates how to read data from an Excel file.
Creating a CSV file is trivial. Use a System.Text.StringBuilder object to create the text for your file, and write it to the file system using the System.IO.File.WriteAllText() method.
Paul Marfleet
"No, his mind is not for rent
To any God or government"
Tom Sawyer - Rush
|
|
|
|
|
thank's alot
but can i get sample code ?
|
|
|
|
|
E_Gold wrote: but can i get sample code ?
I gave you a link to an article for reading the Excel file.
I'm not giving you the code to create the CSV file. If I did, I would be doing your work for you and you wouldn't have learned anything. I've told you the steps to need to follow to create the file. Now you have to think for yourself. If you can't be bothered to take my advice, maybe software development isn't the right career path for you.
Paul Marfleet
"No, his mind is not for rent
To any God or government"
Tom Sawyer - Rush
|
|
|
|
|
Is there any way that we can save the .xls file as csv? I have a problem when reading data from the excel as it rounds the decimal values. To solve my issue I have to save the .xls as a csv as then read the contents. Need help
|
|
|
|
|
hi
how can i convert xls to csv in c# code ?
thank's alot
|
|
|
|
|
Are you still having trouble with this? I think there are some articles around here that can help.
"Real programmers just throw a bunch of 1s and 0s at the computer to see what sticks" - Pete O'Hanlon
|
|
|
|
|
Hi,
This is really annoying - I set a field to disabled or read-only and it's set to a grey color with black text which isn't very easy to read at all.
I want to display my text in a read-only text box so that it can't be edited but so it can still be read clearly. Even though I try setting the background color different it doesn't work.
Can anyone suggest how I might make such fields more readable?
|
|
|
|
|
well don't disable it instead set readonly=true and then set the background color to whatever you want. I normally use LightGrey as background color which looks fine with black text. (I am referring to a web form text box not windows)
-----
|
|
|
|
|
I am looking for scripting tools in c# like .groovy in java
I want to code in that script then call some code in C#,
ANY IDEA??
Please Let Me Know
|
|
|
|
|
|
hello,
I need to know whether i can use C# for hardware programming (like parallel port) and any project suggestions. Something like a hardware interface.
thanks in advance.
obi.
//obinnaaj Eof
|
|
|
|
|
|
Hi,
yes you can but you need probably a C++ dll that handles the most basic accesses to hardware. I also think that you need to program a driver to get direct access to the hardware. If this is finished you can then create a .Net Wrapper around this dll and call the functions inside.
Regards,
Tobias
|
|
|
|
|
what is the difference b/w abstract method and interfaces
|
|
|
|
|
georgemathew2@hotmail.com wrote: what is the difference b/w abstract method and interfaces
I think you mean an abstract class and interface.
An abstract class is a class that cannot be instantiated. However, it can contain members (fields, properties, methods, etc.). Some members can be declared as abstract which means that they do not provide any functionality and any derived class is required to implement the behaviour.
An interface does not contain any functionality or data. Some descibe it as providing a contract. If you implement the interface then you are contractually obliged to implement the members it specifies.
|
|
|
|
|
Nothing, but then you asked the wrong question
You should have asked "What is the difference between an abstract class and an interfaces?"
In which case the answer would have been that an abstract class can contain some implementation detail whereas an interface just defines a contract that an implementing class must conform to.
|
|
|
|
|
Hi
I guess you mean between an abstract class and an interface.
An Interface is basically an abstract class.
with an abstract class you define a class that can not be instanced with new
the abstract class example of this interface:
public interface MyInterface
{
void Foo(int Param);
}
would be:
public abstract class MyAbstractClass
{
public abstract void Foo(int Param);
}
so you see 2 important differences:
1) in an interface you don't need a modifyer as public/private/internal on the members. they all have the same visibility as the interface (int this case public)
2) in an interface every member is implicit abstract.
but still there's a difference between an interface and a class.
in an abstract class you can do this:
public abstract class MyAbstractClass
{
protected int myProtectedMember;
public abstract void Foo(int Param);
Public MyAbstractClass()
{
myProtectedMember = 100;
}
protected virtual void Inc(ref int Value)
{
Value++;
}
}
--> you can implement functions that are accessible by a derived class only. a protected member is a private member that is visible for derived classes as well.
--> the interface won't let you implement fuctions directly on it.
--> an interface can not have a constructor
and one more important difference between an abstract class and an interface:
you can derive a class from exactly one other class, but from as many interfaces you want.
there are some more differences (like implementation of classes that inherit a class/interface) but you'll see if you try
|
|
|
|
|
In my experience "b/w" means "backed with" so I have no idea what your question means.
|
|
|
|
|
Hi
I was wondering one thing about threads. Lets assume I have only a console application with a main thread running. Then lets assume I spawn multiple threads working with some intensive operations for a few minutes. Now, In the main thread I want some way of knowing the exact moment each of the new threads are done executing, in addition to providing feedback during the entire progress. The idea was that the threads would execute a method in the main thread the moment they are done executing.
How I see it this can only be done by adding some sort of "main loop" in the main thread which looks at an event queue and run these events. The other threads must then push a new event on the thread queue (and make sure this queue is thread safe I assume) before they die.
So here is the question: How I solve this problem using nothing more than the standard libraries? Is there any way I can block the main thread until it receives a signal from another thread (kinda like pthreads library for C)?
I assume someone will suggest BackgroundWorker, but I have tried this and the part with giving progress (not as a % number, but as executing methods on the main thread whenever an update is due) seemed hard. I have also looked into the beginInvoke/endInvoke asynchronous execution, but also here the interactive feedback seems to be an issue.
|
|
|
|
|
|
Notification events are always nice.
Need a C# Consultant? I'm available.
Happiness in intelligent people is the rarest thing I know. -- Ernest Hemingway
|
|
|
|
|
Hi,
I have millions of 3D line segments. Each segment is denoted by a point at a each end. One line segment would be v1, v4 (where v1 and v4 are x,y,z). If multiple lines radiate out from one point there will be multiple lines for that point (theoretical v1 could have an infinite number of lines radiating out). There is no ordering in the assignment of x,y,z to points or in the number of points- both are random. There may be 2 or more line segments which form a continuous straight line (v1, v4, v17, vn). I want to find those longer lines and have a single segment replace the multiple segments (v1, v4, v17, vn results in v1, vn). I have been experimenting with the dot product (a result of 1 or -1 is a straight line) and it works. I also have processor and memory issues (neither unlimited) and a time constraint. My question, is there a more efficient way to search for the line segments which form a straight lines (lose the square root) and is there a way to search for line segments radiating from a point (currently I have O^2, unacceptable). Thanks in advance for any help.
-- modified at 12:29 Monday 26th November, 2007
I have developed an efficient routine for finding if line segments are straight continuations of previous lines. Wondering if anyone knows of a search which can be done in a reasonable time frame?
this thing looks like it was written by an epileptic ferret
Dave Kreskowiak
|
|
|
|
|
If there is a bound on the x, y, and z coordinates, then you could do an O(n) sort on all the endpoints. Otherwise, just use a sortedDictionary structure to keep the hash of the endpoints (combine the values of x, y, and z to produce h such that x, y, and z can be retrieved by only knowing h) and a list of indices where that endpoint is contained. Then searching for all line segments "radiating" from the endpoint is easy. This will NOT work, however, for lines that contain other lines but have different endpoints. For example, I think your goal is to combine the lines <0,0,0> to <2,2,2> with <1,1,1> to <3,3,3> to form the line <0,0,0> to <3,3,3>. This is a non-trivial computation, and you will have to solve a system of equations to find out if these two lines can be combined.
Jeff
|
|
|
|
|
I did give a hash some thought, was worried about the size. I have not looked at sortedDictionary, will do so thanks.
I am leaning towards an endpoint ordering. Concern with that approach is the time to form the line. Aren't modern machines supposed to remove this time/memory problem with lots of each.
The original data contains no 'lines with in lines' each segment is unique. Using your example the lines would be <0,0,0> to <1,1,1> and <1,1,1> to <2,2,2> and <2,2,2> to <3,3,3> resulting in a line of <0,0,0> to <3,3,3>. The overlap from your example is not possible in the data set I am working with, if it does occur there was an error beyond my control.
this thing looks like it was written by an epileptic ferret
Dave Kreskowiak
|
|
|
|
|
Then just do what I suggested before, and use sorted dictionary to automatically sort the endpoints for you. You don't even have to use a hash if the class "Point3D" implements IComparable and IEquatable (you can just use the point directly as the key). It would be something like this...
public class Point3D : IComparable<Point3D>, IEquatable<Point3D> {
// this class must implement VALUE comparison (NOT REFERENCE!)
}
public class LineSegment {
public Point3D EndPoint1 { get; }
public Point3D EndPoint2 { get; }
public Vector Slope { get; }
}
public class SomeOther {
List<LineSegment> m_LineSegments = ...; // populate field
SortedDictionary<Point3D, IList<int>> m_EndPoints;
public void AddEndpoint(Point3D pt, int i) {
if (!m_EndPoints.ContainsKey(pt))
m_EndPoints.Add(pt, new List<int>());
m_EndPoints[pt].Add(i);
}
public void CombineLineSegments() {
m_EndPoints = new SortedDictionary<Point3D, IList<int>>(m_LineSegments.Count);
Point3D pt;
for (int i = m_LineSegments.Count - 1; i >= 0; --i) {
AddEndpoint(m_LineSegments[i].EndPoint1, i);
AddEndpoint(m_LineSegments[i].EndPoint2, i);
}
List<int[]> segsToCombine = new List<int[]>();
// Now iterate through the list of endpoints, checking each segment
// for direction coming out of that point. If direction matches, add
// the indices for those vectors to the segsToCombine list
// Finally, combine the segments found to be combinable.
}
}
Jeff
|
|
|
|
|