RE: copying to a multidimensional array?
From: Daniel Jin (anonymous_at_discussions.microsoft.com)
Date: 04/27/04
- Next message: Chris Smith: "Re: C# - Pass by reference, or not?"
- Previous message: SPG: "Transforming between datasets."
- In reply to: Mark Smith: "copying to a multidimensional array?"
- Messages sorted by: [ date ] [ thread ]
Date: Tue, 27 Apr 2004 07:36:03 -0700
I think you misinterpreted what the documentation says. "When copying <b>between</b> multidimensional array<b>s</b>", that would suggest to me what you need both src and dest to be multidimensional. also, if you look at a list of exceptions the method throws, you would see it clearly states that RankException occurs when src and dest have different ranks.
I don't know if there's a prebuilt way of doing what you want. but I would just write my own routine to do the copying.
----- Mark Smith wrote: -----
I'm trying to copy data from a 1D array to a 2D array.
The obvious thing doesn't work:
int[,] twoDee = new int[2,2];
int[] oneDee = new int[2] { 1, 2 };
Array.Copy(oneDee, 2, twoDee, 2, 2);
This causes a RankException. But the MSDN documentation says:
When copying between multidimensional arrays, the array
behaves like a long one-dimensional array, where the rows
(or columns) are conceptually laid end to end.
This seems to suggest that there should be some way to accomplish
this, but I can't find any other syntax that's acceptable. I can
do it using a jagged 2D array, but I really wanted to avoid creating
lots of 1D subarray objects. Anybody know the trick?
- Next message: Chris Smith: "Re: C# - Pass by reference, or not?"
- Previous message: SPG: "Transforming between datasets."
- In reply to: Mark Smith: "copying to a multidimensional array?"
- Messages sorted by: [ date ] [ thread ]
Relevant Pages
|